Supported OS Linux Mac OS Windows

インテグレーションバージョン11.2.0

To find out if this integration is available in your organization, see your Datadog Integrations page or ask your organization administrator.

To initiate an exception request to enable this integration for your organization, email [email protected].

概要

ローカルまたはリモート HTTP エンドポイントの上・下ステータスを監視します。HTTP チェックでは、レスポンス」がないことを示すコード (404 など) の検出、期限切れが近い SSL 証明書の特定、特定のテキストの応答の検索など、さまざまなことができます。また、HTTP 応答時間をメトリクスとして送信します。

セットアップ

インストール

HTTP チェックは、Datadog Agent のパッケージに含まれています。サーバーに追加でインストールする必要はありません。多くのメトリクス指向のチェックは、監視するサービスと同じホストで実行するのが最適ですが、このステータス指向のチェックは、監視するサイトを実行していないホストから実行したい場合があります。

構成

Agent の構成ディレクトリのルートにある conf.d/ フォルダーの http_check.d/conf.yaml ファイルを編集します。使用可能なすべてのコンフィギュレーションオプションの詳細については、http_check.d/conf.yaml のサンプルを参照してください。

init_config:

instances:
  - name: Example website
    url: https://example.com/

  - name: Example website (staging)
    url: http://staging.example.com/

HTTP チェックには一般的なチェックよりも多くの構成オプションがあります。多くのオプションはオプトインで、例えば、必要なオプションを構成しない限り、Agent は SSL の有効性をチェックしません。ただし、期限切れが近い SSL 証明書のチェックはデフォルトで実行されます。

このチェックは、Agent コレクターを実行するたびに実行され、デフォルトでは 15 秒ごとです。このチェックのカスタム実行頻度を設定するには、カスタムチェックドキュメントのコレクション間隔セクションを参照してください。

使用可能なオプションのすべてのリストと説明については、http_check.d/conf.yaml のサンプルを参照してください。以下にそのリストを示します。

設定説明
nameHTTP チェックインスタンスの名前。サービスチェックのタグとして提示されます。
urlテストする URL。
timeoutレスポンスを許可する秒数。デフォルトは 10 です。
methodチェックに使用されるHTTP メソッド。
dataこのパラメーターは、POST、PUT、DELETE、PATCH メソッドを使用したリクエストの本文を指定するために使用します。POST メソッドを使用し、データパラメーターとして XML 文字列を指定すれば、SOAP リクエストがサポートされます。
headersこのパラメーターを使用すると、リクエストで追加ヘッダーを送信できます。詳細な情報と注意については、YAML ファイルのサンプルを参照してください。
content_match文字列または Python 正規表現。HTTP チェックは、応答でこの値を検索し、文字列または表現が見つからない場合は DOWN として報告します。
reverse_content_matchtrue の場合は、content_match オプションの動作を反転させます。つまり、content_match に文字列または式が検出された場合に HTTP チェックは DOWN として報告します。(デフォルトは false)
usernamepasswordサービスが基本的な認証を使用している場合は、ここでユーザー名とパスワードを指定できます。
http_response_status_codeHTTP ステータスコードの文字列または Python 正規表現。このチェックは、一致しないステータスコードに対して DOWN を報告します。デフォルトで 1xx、2xx、3xx の HTTP ステータスコードになります。例: 401 または 4\d\d
include_contenttrue に設定されている場合、チェックは HTTP 応答本文の最初の 500 文字を通知に含めます。デフォルト値は false です。
collect_response_timeデフォルトでは、チェックは応答時間 (秒単位) をメトリクス network.http.response_time として収集します。無効にするには、この値を false に設定します。
tls_verifyurl に到達した時に、サービスの TLS 証明書を検証するように指示します。
tls_ignore_warningtls_verifytrue に設定すると、SSL 接続からのすべてのセキュリティ警告が無効になります。
tls_ca_certこの設定を使用すると、init_config で指定されているデフォルトの証明書パスを上書きできます。
check_certificate_expirationcheck_certificate_expiration が有効な場合、サービスチェックは、SSL 証明書の有効期限をチェックします。: これにより、tls_verify 設定の値に関係なく SSL 証明書が検証されます。
tls_retrieve_non_validated_certtls_verifyfalsecheck_certificate_expirationtrue の場合、これを true に設定すると、証明書に有効期限があるかどうかを調べることができます。
days_warningdays_criticalcheck_certificate_expiration を有効にすると、指定された日数内に SSL 証明書の有効期限が存在する場合に、これらの設定によって警告または重要なアラートが発生します。
ssl_server_namecheck_certificate_expiration を有効にすると、この設定により、接続するサービスのホスト名が指定され、check_hostname が有効になっていると一致するホストが上書きされます。
check_hostnametrue に設定すると、チェックした url ホスト名が SSL 証明書のホスト名と異なる場合に、警告をログに記録します。
skip_proxy設定すると、チェックはプロキシ設定を迂回してチェック URL への直接アクセスを試みます。デフォルトでは false です。このインテグレーションのプロキシ設定は、設定されていない場合 datadog.yaml コンフィギュレーションファイルで定義されたデフォルトのプロキシ設定になります。
allow_redirectsこの設定を使用すると、サービスチェックは HTTP リダイレクトに従います。デフォルトは true です。
tagsチェックと関連付けられる任意のタグのリスト。タグの詳細については、タグのガイドとブログ投稿タグ付けされたメトリクスの力を参照してください。

http_check.d/conf.yaml の構成を完了したら、Agent を再起動し、HTTP サービスチェックと応答時間の Datadog への送信を開始します。

検証

Agent の status サブコマンドを実行し、Checks セクションの http_check を探します。

収集データ

メトリクス

network.http.response_time
(gauge)
The response time of an HTTP request to a given url, tagged by url, e.g. ‘url:http://example.com’.
Shown as second
network.http.can_connect
(gauge)
Whether the check can connect, 1 if true, 0 otherwise. Tagged by url, e.g. ‘url:http://example.com’.
network.http.cant_connect
(gauge)
Whether the check failed to connect, 1 if true, 0 otherwise. Tagged by url, e.g. ‘url:http://example.com’.
http.ssl.days_left
(gauge)
Days until SSL certificate expiration
Shown as day
http.ssl.seconds_left
(gauge)
Seconds until SSL certificate expiration
Shown as second

イベント

HTTP チェックにはイベントは含まれません。

サービスチェック

http.can_connect

Returns CRITICAL if the Agent cannot establish an HTTP connection to the URL. Returns OK if the connection is successful.

Statuses: ok, critical

http.ssl_cert

Returns CRITICAL if the SSL certificate has expired. Returns WARNING if the SSL certificate will expire in less than the configured threshold. Returns OK otherwise.

Statuses: ok, warning, critical, unknown

To disable http.ssl_cert, set check_certificate_expiration to false.

Note: To monitor HTTP error codes (such as 404) or view the first 400 characters of an HTTP response, create a Network Monitor based on these service checks.

http.ssl_cert を無効にするには、check_certificate_expiration を false に設定します。

注: これらのサービスチェックにアラートを設定するには、ネットワークモニターを作成します。

トラブルシューティング

ご不明な点は、Datadog のサポートチームまでお問合せください。