属性 は、トランザクションイベント、エラーイベント、トレースされたエラーの情報を含むキーと値のペアです。 New Relic の Go 言語エージェント が収集する属性について、デフォルトの属性の行き先を調整したり、カスタム属性を作成したりすることができます。
- エラートレース
- Transactionイベント
- ページビュー
さらに詳細なモニタリングを行うために、 カスタムアトリビュート を作成します。
Goエージェントの属性
Go エージェントは、以下の デフォルトの属性 をお客様のアプリから受け取ります。これらのデフォルト設定を調整したり、 特定の目的地に対して属性をオンまたはオフにすることができます 。
newrelic.AttributeHostDisplayName
で呼び出される、現在のスクリプトが実行されているサーバー ホストの名前。
デフォルトの設定です。
トランザクションのトレースEnabled
エラーコレクター(トレースされたエラー)。有効
トランザクションイベント。使用不可
この属性を除外した場合の例
config.Attributes.Exclude = append(config.Attributes.Exclude, newrelic.AttributeHostDisplayName)
で呼び出される Web リクエストのレスポンス ステータス コード newrelic.AttributeResponseCodeDeprecated
デフォルトの設定です。
トランザクションのトレースEnabled
エラーコレクター(トレースされたエラー)。有効
トランザクションイベント。有効
この属性を除外した場合の例
config.Attributes.Exclude = append(config.Attributes.Exclude, newrelic.AttributeResponseCodeDeprecated)
重要
Go エージェント v3.0.0 の時点で、この属性は非推奨とマークされ、名前がhttp.statusCode
に変更されました。v3.x エージェントは引き続きこの属性を生成しますが、v4.0.0 では削除されます。
で呼び出された HTTP リクエストのAccept
ヘッダーから読み取られたタイプ newrelic.AttributeRequestAccept
デフォルトの設定です。
トランザクションのトレースEnabled
エラーコレクター(トレースされたエラー)。有効
トランザクションイベント。有効
この属性を除外した場合の例
config.Attributes.Exclude = append(config.Attributes.Exclude, newrelic.AttributeRequestAccept)
newrelic.AttributeRequestContentLength
で呼び出されたContent-Length
リクエスト ヘッダーから読み取られた受信リクエスト サイズ(バイト単位)。
デフォルトの設定です。
トランザクションのトレースEnabled
エラーコレクター(トレースされたエラー)。有効
トランザクションイベント。有効
この属性を除外した場合の例
config.Attributes.Exclude = append(config.Attributes.Exclude, newrelic.AttributeRequestContentLength)
newrelic.AttributeRequestContentType
で呼び出された、 Content-Type
リクエスト ヘッダーから読み取られた受信リクエストのコンテンツ タイプ。
デフォルトの設定です。
トランザクションのトレースEnabled
エラーコレクター(トレースされたエラー)。有効
トランザクションイベント。有効
この属性を除外した場合の例
config.Attributes.Exclude = append(config.Attributes.Exclude, newrelic.AttributeRequestContentType)
newrelic.AttributeRequestHost
で呼び出される HTTP ホスト リクエスト ヘッダーの名前。
デフォルトの設定です。
トランザクションのトレースEnabled
エラーコレクター(トレースされたエラー)。有効
トランザクションイベント。有効
この属性を除外した場合の例
config.Attributes.Exclude = append(config.Attributes.Exclude, newrelic.AttributeRequestHost)
newrelic.AttributeRequestReferer
で呼び出された、 Referer
リクエスト ヘッダーから読み取られた着信リクエスト リファラー。
デフォルトの設定です。
トランザクションのトレースEnabled
エラーコレクター(トレースされたエラー)。有効
トランザクションイベント。使用不可
この属性を除外した場合の例
config.Attributes.Exclude = append(config.Attributes.Exclude, newrelic.AttributeRequestReferer)
で呼び出されるUser-Agent
HTTP ヘッダーの内容 newrelic.AttributeRequestUserAgentDeprecated
デフォルトの設定です。
トランザクションのトレースEnabled
エラーコレクター(トレースされたエラー)。有効
トランザクションイベント。使用不可
この属性を除外した場合の例
config.Attributes.Exclude = append(config.Attributes.Exclude, newrelic.AttributeRequestUserAgentDeprecated)重要
Go エージェント v3.0.0 の時点で、この属性は非推奨とマークされ、名前が
request.headers.userAgent
に変更されました。v3.x エージェントは引き続きこの属性を生成しますが、v4.0.0 では削除されます。
で呼び出されるUser-Agent
HTTP ヘッダーの内容 newrelic.AttributeRequestUserAgent
デフォルトの設定です。
トランザクションのトレースEnabled
エラーコレクター(トレースされたエラー)。有効
トランザクションイベント。使用不可
この属性を除外した場合の例
config.Attributes.Exclude = append(config.Attributes.Exclude, newrelic.AttributeRequestUserAgent)重要
この属性はエージェントの v3.0.0 で追加され、元の
request.headers.User-Agent
は最終的に削除されます。したがって、v3.x エージェントは、User-Agent HTTP ヘッダーの内容を表す 2 つの属性を生成します。v3.x エージェントの使用時に属性を完全に除外するには、古い属性と新しい属性の両方を含める必要があります。例えば:config.Attributes.Exclude = append(config.Attributes.Exclude,newrelic.AttributeRequestUserAgent,newrelic.AttributeRequestUserAgentDeprecated,)
で呼び出される受信リクエストの HTTP メソッド newrelic.AttributeRequestMethod
デフォルトの設定です。
トランザクションのトレースEnabled
エラーコレクター(トレースされたエラー)。有効
トランザクションイベント。有効
この属性を除外した場合の例
config.Attributes.Exclude = append(config.Attributes.Exclude, newrelic.AttributeRequestMethod)
newrelic.AttributeResponseContentLength
で呼び出された Content-Length レスポンス ヘッダーから読み取られた送信レスポンス サイズ(バイト単位)。
デフォルトの設定です。
トランザクションのトレースEnabled
エラーコレクター(トレースされたエラー)。有効
トランザクションイベント。有効
この属性を除外した場合の例
config.Attributes.Exclude = append(config.Attributes.Exclude, newrelic.AttributeResponseContentLength)
newrelic.AttributeResponseContentType
で呼び出される、Content-Type レスポンス ヘッダーから読み取られる送信レスポンスのコンテンツ タイプ。
デフォルトの設定です。
トランザクションのトレースEnabled
エラーコレクター(トレースされたエラー)。有効
トランザクションイベント。有効
この属性を除外した場合の例
config.Attributes.Exclude = append(config.Attributes.Exclude, newrelic.AttributeResponseContentType)
で呼び出される Web リクエストのレスポンス ステータス コード newrelic.AttributeResponseCode
デフォルトの設定です。
トランザクションのトレースEnabled
エラーコレクター(トレースされたエラー)。有効
トランザクションイベント。有効
この属性を除外した場合の例
config.Attributes.Exclude = append(config.Attributes.Exclude, newrelic.AttributeResponseCode)重要
この属性はエージェントの v3.0.0 で追加され、元の
httpResponseCode
は最終的に削除されます。したがって、v3.x エージェントは、Web 要求の応答ステータス コードを表す 2 つの属性を生成します。v3.x エージェントの使用時に属性を完全に除外するには、古い属性と新しい属性の両方を含める必要があります。例えば:config.Attributes.Exclude = append(config.Attributes.Exclude,newrelic.AttributeResponseCode,newrelic.AttributeResponseCodeDeprecated,)
スパンとセグメントの属性
Go agent v2.6.0 以降をお持ちの場合 、スパンやセグメントの属性を設定することができます。Go エージェントは、以下の デフォルトの属性 をアプリから受け取ります。これらの属性は、スパンイベントとトランザクショントレースセグメントにのみあります。これらのデフォルト設定を調整したり、 特定の宛先に対して属性をオンまたはオフにすることができます 。
データストア セグメントの場合、これは使用されるコレクションであり、 newrelic.SpanAttributeDBCollection
で呼び出されるテーブルまたはグループを表します。
デフォルトの設定です。
トランザクション・トレース・セグメント。Enabled
スパンイベント。有効
この属性を除外した場合の例
config.Attributes.Exclude = append(config.Attributes.Exclude, newrelic.SpanAttributeDBCollection)
データストア セグメントの場合、これはデータベース名であり、クエリが実行されているデータベースの名前を表し、 newrelic.SpanAttributeDBInstance
で呼び出されます。
デフォルトの設定です。
トランザクション・トレース・セグメント。Enabled
スパンイベント。有効
この属性を除外した場合の例
config.Attributes.Exclude = append(config.Attributes.Exclude, newrelic.SpanAttributeDBInstance)
データストア セグメントの場合、これは実行中のパラメータ化されたクエリであり、実行中のクエリを表し、 newrelic.SpanAttributeDBStatement
で呼び出されます。
デフォルトの設定です。
トランザクション・トレース・セグメント。Enabled
スパンイベント。有効
この属性を除外した場合の例
config.Attributes.Exclude = append(config.Attributes.Exclude, newrelic.SpanAttributeDBStatement)
外部セグメントの場合、これは発信リクエストの http メソッドであり、 newrelic.SpanAttributeHTTPMethod
で呼び出されます。
デフォルトの設定です。
トランザクション・トレース・セグメント。Enabled
スパンイベント。有効
この属性を除外した場合の例
config.Attributes.Exclude = append(config.Attributes.Exclude, newrelic.SpanAttributeHTTPMethod)
外部セグメントの場合、これはnewrelic.SpanAttributeHTTPURL
で呼び出される発信リクエストの URL です。
デフォルトの設定です。
トランザクション・トレース・セグメント。Enabled
スパンイベント。有効
この属性を除外した場合の例
config.Attributes.Exclude = append(config.Attributes.Exclude, newrelic.SpanAttributeHTTPURL)
データストア セグメントの場合、これはクエリ対象のデータベースのホスト名とポートであり、 newrelic.SpanAttributePeerAddress
で呼び出されます。
デフォルトの設定です。
トランザクション・トレース・セグメント。Enabled
スパンイベント。有効
この属性を除外した場合の例
config.Attributes.Exclude = append(config.Attributes.Exclude, newrelic.SpanAttributePeerAddress)
データストア セグメントの場合、これはクエリ対象のデータベースのホスト名であり、 newrelic.SpanAttributePeerHostname
で呼び出されます。
デフォルトの設定です。
トランザクション・トレース・セグメント。Enabled
スパンイベント。有効
この属性を除外した場合の例
config.Attributes.Exclude = append(config.Attributes.Exclude, newrelic.SpanAttributePeerHostname)
アトリビュートの変更先
アトリビュートの送信先を変更するには、これらのオプションを使用します。
宛先全体を属性に対して開いたり閉じたりするには、 .Enabled
フラグをtrue
またはfalse
に設定します。
たとえば、オフにするには エラー コレクション: configの後に、次を追加します。
config.ErrorCollector.Attributes.Enabled = false
特定の属性をオンまたはオフにするには、 .Include
または.Exclude
メソッドを使用します。
たとえば、 AttributeResponseCode
を無効にするには: configの後に、次を追加します。
config.Attributes.Exclude = append(config.Attributes.Exclude, newrelic.AttributeResponseCode)
カスタムアトリビュートの作成
トランザクションでこのメソッドを使用してカスタム属性を追加します。
txn.AddAttribute("key", "value")
txn
変数は、Go トランザクション用にインストルメント化された変数です。例えば:
txn.AddAttribute("product", "widget")txn.AddAttribute("price", 19.99)txn.AddAttribute("importantCustomer", true)
カスタムアトリビュートの宛先のデフォルト設定
- エラーコレクター(トレースされたエラー)。有効
- トランザクションイベント。有効