起動ログ

トレーサー起動ログは、起動時に取得可能なすべての情報を取得し、DATADOG TRACER CONFIGURATIONDATADOG TRACER DIAGNOSTICSDATADOG ERROR、または DATADOG CONFIGURATION として記録し、ログ内の検索を簡素化することができます。

言語によっては、言語の慣習や Stdout やそれに相当するものにアクセスする安全性に応じて、別のファイルにログを記録するものもあります。そのような場合、ログの場所は以下の言語タブに記されています。いくつかの言語では、診断エントリをログに残しません。

CONFIGURATION ログは、トレーサーに適用された設定の JSON 形式の表現です。Agent の接続性チェックが実行される言語では、コンフィギュレーション JSON には、Agent に到達できるかどうかを示す agent_error キーも含まれます。

DIAGNOSTICS または ERROR ログエントリは、それを生成する言語では、アプリケーションの起動中にトレーサーがエラーに遭遇したときに発生します。もし DIAGNOSTICS または ERROR のログ行が表示された場合は、表示されたログから設定や構成が正しく適用されていることを確認してください。

ログが全く表示されない場合は、アプリケーションのログが消されていないか、またログレベルが少なくとも INFO であることを確認してください (該当する場合)。

ログの場所:

Python トレーサーは構成情報を INFO レベルでログに記録します。診断情報が見つかった場合は ERROR としてログに記録します。

ログ構成がない場合、診断のみが Stderr に出力されます。

トレーサーの起動ログを表示するには、ロガーを追加するか、構成に DD_TRACE_DEBUG=true を設定して、ddtrace-run でアプリケーションを実行します。これにより、ロガーが追加され、デバッグと起動の両方のトレーサーログが公開されます。

DD_TRACE_LOG_FILE でファイルにログを記録するためのオプションについては、 トレーサーデバッグログを参照してください。

コンフィギュレーション:

2020-07-09 11:04:08,098 INFO [ddtrace.tracer] [tracer.py:338] - - DATADOG TRACER CONFIGURATION - {"date": "2020-07-09T15:04:08.092797", "os_name": "Darwin", "os_version": "19.5.0", "is_64_bit": true, "architecture": "64bit", "vm": "CPython", "version": "0.38.1.dev79+gd22e2972.d20200707", "lang": "python", "lang_version": "3.7.6", "pip_version": "20.0.2", "in_virtual_env": true, "agent_url": "http://localhost:1234", "agent_error": "Agent not reachable. Exception raised: [Errno 61] Connection refused", "env": "", "is_global_tracer": true, "enabled_env_setting": null, "tracer_enabled": true, "sampler_type": "DatadogSampler", "priority_sampler_type": "RateByServiceSampler", "service": "", "debug": true, "enabled_cli": true, "analytics_enabled": false, "log_injection_enabled": false, "health_metrics_enabled": false, "dd_version": "", "priority_sampling_enabled": true, "global_tags": "", "tracer_tags": "", "integrations": {"asyncio": "N/A", "boto": "N/A", "botocore": {"enabled": true, "instrumented": false, "module_available": true, "module_version": "1.15.32", "module_imported": false, "config": "N/A"}, "bottle": {"enabled": false, "instrumented": false, "module_available": true, "module_version": "0.12.18", "module_imported": false, "config": null}, "cassandra": "N/A", "celery": {"enabled": true, "instrumented": false, "module_available": true, "module_version": "4.2.2", "module_imported": false, "config": "N/A"}, "consul": "N/A", "django": "N/A", "elasticsearch": "N/A", "algoliasearch": {"enabled": true, "instrumented": false, "module_available": true, "module_version": "2.2.0", "module_imported": false, "config": "N/A"}, "futures": "N/A", "grpc": "N/A", "mongoengine": {"enabled": true, "instrumented": false, "module_available": true, "module_version": "0.19.1", "module_imported": false, "config": "N/A"}, "mysql": "N/A", "mysqldb": "N/A", "pymysql": "N/A", "psycopg": "N/A", "pylibmc": {"enabled": true, "instrumented": false, "module_available": true, "module_version": "1.6.1", "module_imported": false, "config": "N/A"}, "pymemcache": {"enabled": true, "instrumented": false, "module_available": true, "module_version": "1.4.4", "module_imported": false, "config": "N/A"}, "pymongo": {"enabled": true, "instrumented": false, "module_available": true, "module_version": "3.10.1", "module_imported": false, "config": "N/A"}, "redis": {"enabled": true, "instrumented": false, "module_available": true, "module_version": "3.5.3", "module_imported": false, "config": "N/A"}, "rediscluster": "N/A", "requests": {"enabled": true, "instrumented": false, "module_available": true, "module_version": "2.23.0", "module_imported": false, "config": "N/A"}, "sqlalchemy": "N/A", "sqlite3": "N/A", "aiohttp": {"enabled": true, "instrumented": false, "module_available": true, "module_version": "3.6.2", "module_imported": false, "config": "N/A"}, "aiopg": {"enabled": true, "instrumented": false, "module_available": true, "module_version": "0.15.0", "module_imported": false, "config": "N/A"}, "aiobotocore": {"enabled": false, "instrumented": false, "module_available": true, "module_version": "1.0.1", "module_imported": false, "config": null}, "httplib": "N/A", "vertica": "N/A", "molten": {"enabled": true, "instrumented": false, "module_available": true, "module_version": "0.7.4", "module_imported": false, "config": "N/A"}, "jinja2": "N/A", "mako": "N/A", "flask": "N/A", "kombu": {"enabled": false, "instrumented": false, "module_available": true, "module_version": "4.3.0", "module_imported": false, "config": null}, "falcon": {"enabled": false, "instrumented": false, "module_available": true, "module_version": "1.4.1", "module_imported": false, "config": null}, "pylons": "N/A", "pyramid": {"enabled": false, "instrumented": false, "module_available": true, "module_version": "1.10.4", "module_imported": false, "config": null}, "logging": "N/A"}}

診断:

Python トレーサーは、Agent に到達できない場合に診断行を出力します。

DATADOG TRACER DIAGNOSTIC - Agent not reachable. Exception raised: [Errno 61] Connection refused

接続エラー

アプリケーションや起動ログに DIAGNOSTICS エラーや Agent に到達できない、接続できないというメッセージ (言語によって異なる) がある場合、トレーサーが Datadog Agent にトレースを送ることができないことを意味します。

これらのエラーがある場合は、Agent が ECSKubernetesDocker またはその他のオプションのトレースを受信するようにセットアップされていることを確認するか、またはサポートチームまでお問い合わせの上、トレーサーと Agent の構成を確認してください。

インスツルメントされたアプリケーションが Datadog Agent と通信できないことを示すエラーについては、接続エラーを参照してください。

構成設定

ログに CONFIGURATION 行のみが含まれている場合にトラブルシューティングするには、トレーサーによって出力された設定が、Datadog トレーサーのデプロイと構成の設定と一致することを確認すると良いでしょう。さらに、Datadog に特定のトレースが表示されない場合は、ドキュメントの互換性要件セクションを確認して、これらのインテグレーションがサポートされていることを確認してください。

使用しているインテグレーションがサポートされていない場合や、Datadog でトレースが期待通りに表示されない理由を理解するために構成出力を新しい視点で確認したい場合は、サポートに連絡して診断を受けるか、新しいインテグレーションの機能リクエストを作成してください。

起動ログの無効化

言語ごとに、環境変数 DD_TRACE_STARTUP_LOGS=false を設定して起動ログを無効にできますが、これは、発行されたログが問題を引き起こしている場合にのみ行ってください。後でデバッグログを送信する場合は、サポートケースのトリアージを迅速化するために、起動ログを有効にし、関連するすべてのログをまとめて送信してください。

その他の参考資料

お役に立つドキュメント、リンクや記事:

PREVIEWING: aaron.hoffman/SDCD-952_write-rollback-cd-docs