• /
  • Log in
  • Free account

Create custom events (Go)

Custom events are useful to explore data for a single event you are interested in, including data from external sources, at a particular moment in time. To track arbitrary event data for apps monitored by your New Relic Go agent, add RecordCustomEvent to the apps. You can then query and visualize the event data.

RecordCustomEvent parameters

To add RecordCustomEvent to your Go app, use this format:

RecordCustomEvent(eventType string, params map[string]interface{})





Required. The name of the event type to record.

params map

number, string, or boolean

Required. Specify key/value pairs of attributes to annotate the event.

  • Each value in the params map must be a number, string, or boolean.
  • Keys must be less than 255 bytes.
  • The params map must not contain more than 64 attributes.


Here is an example of a custom event for a Go app:

func customEvent(w http.ResponseWriter, r *http.Request) {
    io.WriteString(w, "recording a custom event")

    app.RecordCustomEvent("my_event_type", map[string]interface{}{
        "myString": "hello",
        "myFloat":   0.603,
        "myInt":     123,
        "myBool":    true,

For more help

If you need more help, check out these support and learning resources:

Create issueEdit page
Copyright © 2021 New Relic Inc.