Azure WindowsへDatadog Agentのインストール

このガイドは、Azure Cloud Serviceにデプロイしてることを仮定しています。

インスタンスの起動時にDatadog Agentをインストールする

以下の内容でinstallDatadogAgent.cmdという名前のファイルを作成します:

set log=datadog-install.log
set api_key=%1

sc query | findstr DatadogAgent
if ERRORLEVEL 1 (
    echo "Datadog Agent service not detected" >> %log%
    echo "Starting the installation" >> %log%
    reg query "HKLM\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.5"| findstr /c:"Install    REG_DWORD    0x1"

    if ERRORLEVEL 1 (
        echo "Installing .NET 3.5" >> %log%
        powershell -Command "Import-Module ServerManager;Add-WindowsFeature -Name 'Net-Framework-Core'"
    ) else (
        echo ".NET 3.5 already installed" >> %log%
    )

    if exist ddagent.msi (
        echo "Already has the installer" >> %log%
    ) else (
        echo "Fetching the Agent Installer" >> %log%
        powershell -Command "(New-Object System.Net.WebClient).DownloadFile('https://s3.amazonaws.com/ddagent-windows-stable/ddagent-cli.msi', 'ddagent.msi')"
    )

    echo "Starting the installer" >>%log%
    msiexec.exe /qn /i ddagent.msi APIKEY=%api_key% /L+ %log%
) else (
    echo "Agent already exists, skipping install" >>%log%
)

echo "Finished Install" >>%log%
exit 0

Visual Studioを使用している場合は、このファイルがパッケージに含まれていることを確認してください。 また、このファイルの*Copy to Output Directory*プロパティーを*Copy Always*に設定し、*Build Action*を*Content*にしてください。

ServiceDefinition.csdefファイルの<Startup>セクションに、次の部分を追記することによって、インストールタスクを追加します:

<Task commandLine="installDatadogAgent.cmdi YOUR_API_KEY" executionContext="elevated" />

YOUR_API_KEYの部分は、DatadogのダッシュボードからAPI keyを取得し、置き換えてください。

ここで作成したファイルにより、アプリケーションデプロイで最新バージョンのDatadog Agentがインストールされます。

アプリケーションのデプロイ

ここで、アプリケーションのcloud service packageファイル(*.cspkg)を再パッケージします。 その際、installDatadogAgent.cmdファイルが含まれていることを確認しておいてください。 更に、Visual StudioのPublishボタンを押し、直接Datadog Agentをアップロードすることもできます。

デプロイが終われば、DatadogダッシュボードのIngrastracturesタブから表示されるホストリストに新しいホストが加わっているはずです:

infrastructure view