Go-Expvar
セキュリティモニタリングが使用可能です セキュリティモニタリングが使用可能です

Go-Expvar

Agent Check Agentチェック

Supported OS: Linux Mac OS Windows

Go グラフ

概要

Go サービスのメモリ使用量を追跡し、Go の expvar パッケージから計測されたメトリクスを収集します。

dogstats-go のみを使用して Go コードを計測する場合でも、このインテグレーションを使用して、メモリ関連のメトリクスを収集できます。

セットアップ

インストール

Go Expvar チェックは Agent にパッケージ化されているため、メトリクスを収集するには、Go サービスを実行している場所に Agent をインストールします。

構成

Go サービスの準備

Go サービスで expvar パッケージをまだ使用していない場合は、これをインポートします (import "expvar")。expvar を使用して独自のメトリクスを計測しない場合 (サービスのメモリメトリクスのみを収集する場合) は、空の識別子を使用してパッケージをインポートします (import _ "expvar")。サービスがまだ (http パッケージを使用して) HTTP リクエストをリスニングしていない場合は、ローカルで Datadog Agent のみをリスニングするように設定します。

ホスト

ホストで実行中の Agent でこのチェックを構成する場合は、以下の手順に従ってください。コンテナ環境の場合は、コンテナ化セクションを参照してください。

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

    : metrics リストが構成されていない場合でも、Agent は memstat メトリクスを収集します。metrics を使用すると、収集する expvar 変数を Agent に指示できます。

  2. Agent を再起動します

: Go Expvar インテグレーションではカスタムメトリクスを送信することができますが、これはお客様の課金に影響します。デフォルトでは、メトリクス数は 350 に制限されています。メトリクスの追加が必要な場合は、Datadog のサポートチームにお問い合わせください。

コンテナ化

コンテナ環境の場合は、オートディスカバリーのインテグレーションテンプレートのガイドを参照して、次のパラメーターを適用してください。

パラメーター
<インテグレーション名>go_expvar
<初期コンフィギュレーション>空白または {}
<インスタンスコンフィギュレーション>{"expvar_url": "http://%%host%%:8080"}

検証

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

収集データ

メトリクス

go_expvar.memstats.alloc
(gauge)
Bytes allocated and not yet freed
Shown as byte
go_expvar.memstats.frees
(gauge)
Number of frees
Shown as operation
go_expvar.memstats.heap_alloc
(gauge)
Bytes allocated and not yet freed
Shown as byte
go_expvar.memstats.heap_idle
(gauge)
Bytes in idle spans
Shown as byte
go_expvar.memstats.heap_inuse
(gauge)
Bytes in non-idle spans
Shown as byte
go_expvar.memstats.heap_objects
(gauge)
Total number of allocated objects
Shown as item
go_expvar.memstats.heap_released
(gauge)
Bytes released to the OS
Shown as byte
go_expvar.memstats.heap_sys
(gauge)
Bytes obtained from system
Shown as byte
go_expvar.memstats.lookups
(gauge)
Number of pointer lookups
Shown as operation
go_expvar.memstats.mallocs
(gauge)
Number of mallocs
Shown as operation
go_expvar.memstats.num_gc
(gauge)
Number of garbage collections
Shown as garbage collection
go_expvar.memstats.pause_ns.95percentile
(gauge)
95th percentile of recent GC pause durations
Shown as nanosecond
go_expvar.memstats.pause_ns.avg
(gauge)
Average of recent GC pause durations
Shown as nanosecond
go_expvar.memstats.pause_ns.count
(rate)
Number of submitted GC pause durations
Shown as sample
go_expvar.memstats.pause_ns.max
(gauge)
Max GC pause duration
Shown as nanosecond
go_expvar.memstats.pause_ns.median
(gauge)
Median GC pause duration
Shown as nanosecond
go_expvar.memstats.pause_total_ns
(gauge)
Total GC pause duration over lifetime of process
Shown as nanosecond
go_expvar.memstats.total_alloc
(gauge)
Bytes allocated (even if freed)
Shown as byte
go_expvar.memstats.total_alloc.count
(count)
Bytes allocated (even if freed) as monotonic count
Shown as byte

イベント

Go-Expvar チェックには、イベントは含まれません。

サービスのチェック

Go-Expvar チェックには、サービスのチェック機能は含まれません。

トラブルシューティング

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

その他の参考資料