- 重要な情報
- はじめに
- 用語集
- エージェント
- インテグレーション
- OpenTelemetry
- 開発者
- API
- CoScreen
- アプリ内
- インフラストラクチャー
- アプリケーションパフォーマンス
- 継続的インテグレーション
- ログ管理
- セキュリティ
- UX モニタリング
- 管理
コードを使用してトレーシングライブラリをセットアップし、APM データを収集するように Agent を構成した後、オプションで統合サービスタグ付けのセットアップなど、必要に応じてトレーシングライブラリを構成してください。
トレーサーの設定は、以下の環境変数で構成することができます。
DD_ENV
env
prod
、pre-prod
、stage
など)。DD_SERVICE
service
package.json
の name
フィールドDD_VERSION
version
package.json
の version
フィールドDD_TAGS
tags
{}
key:value,key:value
となります。プログラムで設定する場合は、tracer.init({ tags: { foo: 'bar' } })
のような形式になります。サービスに env
、service
、version
を設定するには、DD_ENV
、DD_SERVICE
、DD_VERSION
を使用することをおすすめします。このような環境変数の構成におすすめについては、統合サービスタグ付けのドキュメントをご参照ください。
DD_TRACE_ENABLED
true
false
に設定すると、ライブラリの全ての機能が無効になります。DD_TRACE_DEBUG
false
DD_TRACING_ENABLED
true
DD_TRACE_AGENT_URL
url
http://localhost:8126
receiver_port
や DD_APM_RECEIVER_PORT
をデフォルトの 8126
以外に設定した場合、DD_TRACE_AGENT_PORT
や DD_TRACE_AGENT_URL
をそれに一致させる必要があります。datadog.yaml
ファイルの apm_config.receiver_socket
または DD_APM_RECEIVER_SOCKET
環境変数と組み合わせて、Unix ドメインソケットをサポートします。DD_TRACE_AGENT_HOSTNAME
hostname
localhost
DD_TRACE_AGENT_PORT
port
8126
receiver_port
や DD_APM_RECEIVER_PORT
をデフォルトの 8126
以外に設定した場合、DD_TRACE_AGENT_PORT
や DD_TRACE_AGENT_URL
をそれに一致させる必要があります。DD_DOGSTATSD_PORT
dogstatsd.port
8125
dogstatsd_port
や DD_DOGSTATSD_PORT
がデフォルトの 8125
以外に設定されている場合、このトレーシングライブラリ DD_DOGSTATSD_PORT
はそれに合わせなければなりません。DD_LOGS_INJECTION
logInjection
false
DD_TRACE_SAMPLE_RATE
sampleRate
DD_TRACE_RATE_LIMIT
rateLimit
DD_TRACE_SAMPLE_RATE
が設定されている場合は、1.0
。そうでない場合は、Datadog Agent にレート制限を委ねます。
0.0
と 1.0
の間の浮動小数点数で、サンプリングするスパンの比率を指定します。DD_TRACE_SAMPLING_RULES
samplingRules
[]
sample_rate
値を持たなければなりません (この値を含む)。各ルールはオプションで name
と service
フィールドを持ち、これらはトレースの service
と name
に対してマッチする正規表現文字列です。ルールは、トレースのサンプルレートを決定するために設定された順番で適用されます。省略された場合、トレーサーは Agent に従い、すべてのトレースでサンプルレートを動的に調整します。DD_SPAN_SAMPLING_RULES
spanSamplingRules
[]
sample_rate
値は 0.0 から 1.0 の間でなければなりません (この値を含む)。
詳しくは、取り込みメカニズムを参照してください。my-service
と演算子名 http.request
のスパンサンプリングレートを 50% に設定し、1 秒間に最大 50 トレースします: '[{"service": "my-service", "name": "http.request", "sample_rate":0.5, "max_per_second": 50}]'
DD_SPAN_SAMPLING_RULES_FILE
DD_SPAN_SAMPLING_RULES
が優先されます。ルールのフォーマットは DD_SPAN_SAMPLING_RULES
を参照してください。DD_RUNTIME_METRICS_ENABLED
runtimeMetrics
false
8125
(または DD_DOGSTATSD_PORT
で構成) を UDP 用に開いておく必要があります。DD_SERVICE_MAPPING
serviceMapping
mysql:my-mysql-service-name-db,pg:my-pg-service-name-db
plugin:service-name
ペア (スペースありまたはなし) を許容します。DD_TRACE_DISABLED_PLUGINS
DD_TRACE_DISABLED_PLUGINS=express,dns
DD_TRACE_LOG_LEVEL
logLevel
debug
error
や debug
などです。flushInterval
2000
DD_TRACE_PARTIAL_FLUSH_MIN_SPANS
flushMinSpans
1000
DD_TRACE_OBFUSCATION_QUERY_STRING_REGEXP
http.url
タグで報告されるリクエストのクエリ文字列から、機密性の高いデータを削除するための正規表現 (マッチしたデータは <redacted>
に置き換えられます)。空文字列を指定すると編集を無効にし、.*
を指定するとすべてのクエリ文字列を編集することができます。警告: この正規表現は安全でない入力 (url) からのリクエストに対して実行されるので、安全な正規表現を使用するようにしてください。DD_TRACE_CLIENT_IP_HEADER
http.client_ip
タグのソースとなるカスタムヘッダー名。lookup
require('dns').lookup
DD_TRACE_AGENT_PROTOCOL_VERSION
protocolVersion
0.4
DD_PROFILING_ENABLED
profiling
false
DD_TRACE_REPORT_HOSTNAME
reportHostname
false
experimental
{}
true
という値を追加することで有効にすることができます。利用可能な実験的機能の詳細については、サポートに連絡してください。plugins
true
DD_TRACE_STARTUP_LOGS
startupLogs
false
DD_DBM_PROPAGATION_MODE
dbmPropagationMode
'disabled'
'service'
または 'full'
に設定します。'service'
オプションは DBM と APM サービス間の接続を可能にします。'full'
オプションは、データベースクエリイベントを持つデータベーススパン間の接続を可能にします。Postgres で利用可能です。DD_APPSEC_ENABLED
appsec.enabled
false
DD_APPSEC_RULES
appsec.rules
DD_APPSEC_WAF_TIMEOUT
appsec.wafTimeout
5000
DD_APPSEC_OBFUSCATION_PARAMETER_KEY_REGEXP
appsec.obfuscatorKeyRegex
DD_APPSEC_OBFUSCATION_PARAMETER_VALUE_REGEXP
appsec.obfuscatorValueRegex
DD_REMOTE_CONFIG_POLL_INTERVAL_SECONDS
remoteConfig.pollInterval
Datadog APM トレーサーは、分散型トレーシングのための B3 と W3C (TraceParent) のヘッダー抽出と挿入をサポートしています。
分散ヘッダーの挿入と抽出のスタイルを構成することができます。
Node.js トレーサーは、以下のスタイルをサポートしています。
Datadog
b3multi
(B3
は非推奨)tracecontext
B3 single header
DD_TRACE_PROPAGATION_STYLE_INJECT
tracePropagationStyle.inject
Datadog,tracecontext
DD_TRACE_PROPAGATION_STYLE_EXTRACT
tracePropagationStyle.extract
Datadog,tracecontext
DD_TRACE_PROPAGATION_STYLE
tracePropagationStyle
Datadog,tracecontext
DD_TRACE_PROPAGATION_STYLE_INJECT
と DD_TRACE_PROPAGATION_STYLE_EXTRACT
の構成が存在する場合には、そちらが優先されます。ライブラリの操作例については、API ドキュメントを参照してください。
お役に立つドキュメント、リンクや記事: