構文
NewRelic.recordCustomEvent(string $eventType, [string $eventName,] map<string, object> $eventAttributes)
New Relic モバイルモニタリングのカスタムイベントを記録します。
要件
Agentバージョン5.12.0以上。
説明
NRQL で使用する カスタムイベント を作成、記録します。このイベントには、マップとして指定された属性のリストが含まれます。 setAttribute
を使った場合とは異なり、カスタムイベントに属性を追加すると、そのイベントにのみ属性が追加され、セッション属性にはなりません。
重要な検討事項やベストプラクティスは以下の通りです。
eventType
は、高レベルのカテゴリーに使用することを意図しています。例えば、イベントタイプGestures
を作成するとします。- カスタムイベントの名前に
eventType
を使用しないでください。 イベントの名前を付ける属性を作成するか、オプションのname
パラメータを使用してください。多くのカスタムイベントを作成することができますが、制限すべきはイベントタイプのみです。 - オプションの
name
パラメータを使用すると、name
キーをattributes
辞書に追加するのと同じ効果があります。name
は、New Relic UI でイベントを表示する際に使用するキーワードです。便利な名前
を作成するには、いくつかの属性を組み合わせるとよいでしょう(例を参照)。
重要
New Relic Android agent version 5.12.0 の時点で、 recordEvent
メソッドは非推奨となり、 recordCustomEvent
に置き換えられます。 recordEvent
メソッドは不特定多数の期間、継続して動作しますが、アプリに recordEvent
メソッドが含まれている場合、New Relic はそれらを置き換えることを推奨します。
これらのメソッドを更新すると、廃止されたイベントタイプを使用しているInsightsのクエリやダッシュボードに影響があります。必要に応じて、NRQL クエリとダッシュボードを調整してください。
その他のAndroid APIについては、 Insightsへのカスタム属性やイベントの送信 をご覧ください。
パラメータ
パラメーター | 説明 |
---|---|
文字列 | 必須です。 |
文字列 | オプションです。このパラメータを使用して、イベントの名前を付けます。(このパラメーターを使用することは、 |
マップ<文字列, オブジェクト> | 任意です。 重要カスタムアトリビュートのキーを設定する際には、オーバーライドできない デフォルトのアトリビュートがあることに注意してください 。 |
戻り値
イベントの記録に成功した場合は true
を、失敗した場合は false
を返します。
例
基本的なカスタムイベント
Map attributes = new HashMap();attributes.put("attributeName1", "value1");attributes.put("attributeName1", 2);boolean eventRecorded = NewRelic.recordCustomEvent("eventType", attributes);
複数の属性を持つカスタムイベント
eventType
パラメータが、上位のカテゴリである Car
に使用されていることに注目してください。
Map attributes = new HashMap();attributes.put("make", "Ford");attributes.put("model", "ModelT");attributes.put("color", "Black");attributes.put("VIN", "123XYZ");attributes.put("maxSpeed", 12);
NewRelic.recordCustomEvent("Car", attributes);
name'パラメータを使用したカスタムイベント
Map attributes = new HashMap();attributes.put("make", "Ford");attributes.put("model", "ModelT");
NewRelic.recordCustomEvent("Car", "Ford Model T", attributes);