- 重要な情報
- はじめに
- 用語集
- ガイド
- エージェント
- インテグレーション
- OpenTelemetry
- 開発者
- API
- CoScreen
- アプリ内
- Service Management
- インフラストラクチャー
- アプリケーションパフォーマンス
- 継続的インテグレーション
- ログ管理
- セキュリティ
- UX モニタリング
- 管理
Datadog の APM (アプリケーションパフォーマンス監視機能、またはトレース) を使用して、バックエンドアプリケーションコードからトレースを収集できます。このビギナーガイドでは、トレースを Datadog に取り込む方法をご説明します。
注: Datadog APM は、多くの言語とフレームワークで使用できます。アプリケーションのインスツルメンテーションのドキュメントを参照してください。
Datadog アカウントをまだ作成していない場合は作成します。
Datadog Agent をインストールする前に、以下のコマンドを使用して Vagrant Ubuntu 22.04 仮想マシンを設定します。Vagrant の詳細については、はじめにページをご参照ください。
vagrant init ubuntu/jammy64
vagrant up
vagrant ssh
Datadog API キーを付加した 1 行のインストールコマンドを使用して、Datadog Host Agent をインストールします。
DD_API_KEY=<DATADOG_API_KEY> DD_SITE="" bash -c "$(curl -L https://s3.amazonaws.com/dd-agent/scripts/install_script_agent7.sh)"
ステータスコマンドを使用して、Agent が実行されていることを確認します。
sudo datadog-agent status
数分経過したら、Datadog で Infrastructure List をチェックして、Agent がアカウントに接続されていることを確認します。
残りのステップを実行し、Datadog サイト内のクイックスタート手順に従って、最高のエクスペリエンスを実現します。例:
service
、env
、version
タグを動的に設定します。最新バージョンの Agent v6 と v7 では、APM はデフォルトで有効化されています。これは、Agent の datadog.yaml
コンフィギュレーションファイルで確認できます。
# apm_config:
## APM Agent の実行の有無
# enabled: true
trace-agent.log
でも確認できます。
# /var/log/datadog/trace-agent.log:
2019-03-25 20:33:18 INFO (run.go:136) - trace-agent running on host ubuntu-jammy
2019-03-25 20:33:18 INFO (api.go:144) - listening for traces at http://localhost:8126
2019-03-25 20:33:28 INFO (api.go:341) - no data received
2019-03-25 20:34:18 INFO (service.go:63) - total number of tracked services: 0
最高の体験になるよう、環境変数 DD_ENV
を使用して、サービスのトレーサーを通じて env
を構成することをお勧めします。
さらに、トレーサーでログの挿入が有効になっている場合、env
はトレースとログ全体で一貫しています。これがどのように機能するかについては、統合サービスタグ付けを参照してください。
または、datadog.yaml
を更新して環境に名前を付けて、apm_config
で env
を設定します。APM の env
の設定の詳細については、スコープへのプライマリタグの設定に関するガイドを参照してください。
アプリケーションを設定する前に、まず Ubuntu VM 上に pip
をインストールし、次に flask
と ddtrace
をインストールします。
sudo apt-get install python-pip
pip install flask
pip install ddtrace
Ubuntu VM 上に、以下の内容でアプリケーション hello.py
を作成します。
from flask import Flask
app = Flask(__name__)
@app.route('/')
def index():
return 'hello world'
if __name__ == '__main__':
app.run(host='0.0.0.0', port=5050)
ddtrace
を使用して hello.py
を実行します。ddtrace
は Datadog でアプリケーションを自動的に計測します。
export DD_SERVICE=hello
ddtrace-run python hello.py
次のような出力が表示されます。
* Serving Flask app "hello" (lazy loading)
...
* Running on http://0.0.0.0:5050/ (Press CTRL+C to quit)
アプリケーションをテストし、curl
を使用して Datadog にトレースを送信します。アプリケーションは (上述のように) 実行中のはずです。別のコマンドプロンプトで、以下を実行します。
vagrant ssh
curl http://0.0.0.0:5050/
以下が出力されます。
hello world
数分経過すると、Datadog の hello
サービスの下にトレースが表示されます。サービスページまたはトレースの一覧をご確認ください。