UI を使用する代わりに、NerdGraph API でブラウザー アプリケーションを作成できます。これの利点は、ブラウザ アプリケーションを New Relic で計測するときに、JavaScript スニペットをプログラムで作成および取得して、ブラウザ アプリにコピー アンド ペーストできることです。
新しいブラウザ アプリケーションを作成する
以下は、デフォルト設定で新しいブラウザ アプリケーションを作成するミューテーションの例です。
突然変異:
mutation CreateExampleBrowserApplication( $accountId: Int! $name: String! $settings: AgentApplicationBrowserSettingsInput) { agentApplicationCreateBrowser( accountId: $accountId name: $name settings: $settings ) { guid name settings { cookiesEnabled distributedTracingEnabled loaderScript loaderType } }}
変数:
{ "accountId": Int!, "name": String!, "settings": { "cookiesEnabled": Boolean, "distributedTracingEnabled": Boolean, "loaderType": AgentApplicationBrowserLoader }}
JavaScript スニペットを取得する
JavaScript スニペットを取得して、 コピーしてアプリケーションに貼り付けることができます。返されるスニペットは JSON でエンコードされた文字列であり、コピーして貼り付ける前に解析する必要があることに注意してください。
クエリ:
query FetchBrowserJavaScriptSnippet($guid: EntityGuid!) { actor { entity(guid: $guid) { ... on BrowserApplicationEntity { guid name browserProperties { jsLoaderScript } } } }}
変数:
{ "guid": EntityGuid!}
ブラウザ監視の構成例
ブラウザの設定は、NerdGraph から構成できます。アプリケーションの apdex を変更するミューテーションの例を次に示します。
突然変異:
mutation UpdateBrowserApdexTarget( $guid: EntityGuid! $settings: AgentApplicationSettingsUpdateInput!) { agentApplicationSettingsUpdate(guid: $guid, settings: $settings) { browserSettings { browserConfig { apdexTarget } } errors { description errorClass field } }}
変数:
{ "guid": EntityGuid!, "settings": { "browserConfig": { "apdexTarget": Float } }}
NerdGraph を介して更新できるブラウザー設定の詳細については、次のミューテーションを参照してください。各フィールドのドキュメントは、NerdGraph エクスプローラーにあります。
突然変異:
mutation UpdateBrowserSettingsExample($guid: EntityGuid!, settings: AgentApplicationSettingsUpdateInput!) { agentApplicationSettingsUpdate(guid: $guid, settings: $settings) { browserSettings { browserConfig { apdexTarget } browserMonitoring { ajax { denyList } distributedTracing { allowedOrigins corsEnabled corsUseNewrelicHeader corsUseTracecontextHeaders enabled excludeNewrelicHeader } loader privacy { cookiesEnabled } } dataManagement { sendTransactionEventsToInternalStream } } errors { description errorClass field } }}
変数:
{ "guid": EntityGuid!, "settings": { "browserConfig": { "apdexTarget": Float }, "browserMonitoring": { "ajax": { "denyList": [String!] }, "distributedTracing": { "allowedOrigins": [String!], "corsEnabled": Boolean, "corsUseNewrelicHeader": Boolean, "corsUseTracecontextHeaders": Boolean, "enabled": Boolean, "excludeNewrelicHeader": Boolean } "loader": AgentApplicationSettingsBrowserLoaderInput, "privacy": { "cookiesEnabled": Boolean } } "dataManagement": { "sendTransactionEventsToInternalStream": Boolean } }}