- 重要な情報
- はじめに
- 用語集
- エージェント
- インテグレーション
- OpenTelemetry
- 開発者
- API
- CoScreen
- アプリ内
- インフラストラクチャー
- アプリケーションパフォーマンス
- 継続的インテグレーション
- ログ管理
- セキュリティ
- UX モニタリング
- 管理
Azure Deployment Manager (ADM) を使用すると、複雑なアプリケーションを安全にデプロイするための段階的ロールアウトを管理できます。
Datadog の使用によって、Azure Deployment Manager 用の健全性チェックを作成し、問題が検出された場合にデプロイを中止することが可能になります。
Datadog を ADM の健全性チェックとして使用するには、アクティブな Datadog アカウントと Azure Deployment Manager のアクティブなインスタンスが必要です。
<API_KEY>
と <APP_KEY>
をそれぞれ Datadog API キーとアプリケーションキーに置き換えてください。また、前の手順で作成した各モニター (または複合条件モニター) の resources
にセクションを作成し、<MONITOR_ID>
をモニター ID に置き換えます。1 つの健全性チェック手順に複数のチェックを追加することは可能ですが、健全性チェック手順ごとにチェックを 1 つ作成し、複合条件モニターごとに複数の健全性チェック手順を作成することをお勧めします。複合条件モニター以外を使用してチェックを設定している場合は、適宜 regex
を更新してください。以下に、健全性チェックとされる Azure Deployment Manager のロールアウトテンプレートの一部を示します。
{
"healthChecks": [
{
"name": "datadogCompositeMonitor1",
"request": {
"method": "GET",
"uri": "https://api.datadoghq.com/api/v1/monitor/<モニター_ID>?application_key=<アプリキー>",
"authentication": {
"type": "ApiKey",
"name": "apikey",
"in": "Query",
"value": "<API_キー>"
}
},
"response": {
"successStatusCodes": ["200"],
"regex": {
"matches": ["\"overall_state\"\\s*:\\s*\"OK\""],
"matchQuantifier": "All"
}
}
}
]
}
以下に、健全性チェック手順とされる Azure Deployment Manager のロールアウトテンプレートの一部を示します。
{
"apiVersion": "2018-09-01-preview",
"type": "Microsoft.DeploymentManager/steps",
"name": "datadogHealthCheckStep1",
"location": "Central US",
"tags": {},
"properties": {
"stepType": "healthCheck",
"attributes": {
"waitDuration": "PT5M",
"maxElasticDuration": "PT10M",
"healthyStateDuration": "PT10M",
"type": "REST",
"properties": {
"healthChecks": [
{
"name": "datadogCompositeMonitor1",
"request": {
"method": "GET",
"uri": "https://api.datadoghq.com/api/v1/monitor/<モニター_ID>?application_key=<アプリキー>",
"authentication": {
"type": "ApiKey",
"name": "apikey",
"in": "Query",
"value": "<API_キー>"
}
},
"response": {
"successStatusCodes": ["200"],
"regex": {
"matches": ["\"overall_state\"\\s*:\\s*\"OK\""],
"matchQuantifier": "All"
}
}
}
]
}
}
}
}
以下に、1 つの Azure Deployment Manager ロールアウト手順のテンプレート全体を示します。
{
"$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {},
"variables": {},
"resources": [
{
"apiVersion": "2018-09-01-preview",
"type": "Microsoft.DeploymentManager/steps",
"name": "datadogHealthCheckStep1",
"location": "Central US",
"tags": {},
"properties": {
"stepType": "healthCheck",
"attributes": {
"waitDuration": "PT5M",
"maxElasticDuration": "PT10M",
"healthyStateDuration": "PT10M",
"type": "REST",
"properties": {
"healthChecks": [
{
"name": "datadogCompositeMonitor1",
"request": {
"method": "GET",
"uri": "https://api.datadoghq.com/api/v1/monitor/<モニター_ID>?application_key=<アプリキー>",
"authentication": {
"type": "ApiKey",
"name": "apikey",
"in": "Query",
"value": "<API_キー>"
}
},
"response": {
"successStatusCodes": ["200"],
"regex": {
"matches": [
"\"overall_state\"\\s*:\\s*\"OK\""
],
"matchQuantifier": "All"
}
}
}
]
}
}
}
}
]
}
あるロールアウト段階の健全性チェック手順を実行する際、Azure Deployment Manager は、そのデプロイ段階の健全性チェック手順で指定された複合条件モニターのステータスを Datadog Monitor API にクエリします。
Azure Deployment Manager は、テンプレートで指定されている正規表現を使用して応答をパースし、overall_status: OK
の語句が含まれているかを確認します。
overall_status: OK
が見つかった場合は、チェックは正常と見なされます。ステータスが Warn
、No Data
、または Alert
の場合、チェックは異常と見なされ、Azure Deployment Manager はデプロイを中止します。
Azure Deployment Manager は、メトリクスを報告しません。
Azure Deployment Manager には、イベントは含まれません。
Azure Deployment Manager には、サービスのチェック機能は含まれません。
ご不明な点は、Datadog のサポートチームまでお問合せください。