Go コレクターの設定
Go Collector をインストールした後、必要な設定を指定して、 Go アプリケーションを監視するように設定する必要があります。
コレクターの設定
ほとんどのユース・ケースでは instana.NewSensor() を使用して Instana Go コレクターを初期化すれば十分です。デフォルトの構成オプションはそのままにしておきます。 Instana Go コレクターの初期化時に構成オブジェクトを渡すこともできます。
sensor := instana.NewSensorWithTracer(
instana.NewTracerWithOptions(&instana.Options{
// ...
},
)
この instana.Options 設定オブジェクトには、コレクターを設定するための以下のフィールドが用意されています:
Service- Instana バックエンドでプログラムの識別に使用されるグローバル・サービス名AgentHost、AgentPort- デフォルトでlocalhost:42699に設定され、Instana プロキシー・エージェントの座標を設定しますLogLevel-Error、Warn、InfoまたはDebugのいずれかEnableAutoProfile-trueの場合、自動継続プロセス・プロファイルを有効にしますMaxBufferedSpans- バッファーに入れるスパンの最大数ForceTransmissionStartingAt- バッファーをエージェントにフラッシュするまでに収集するスパンの数MaxBufferedProfiles- バッファーに入れるプロファイルの最大数IncludeProfilerFrames-プロファイラー呼び出しをプロファイルに組み込むかどうかTracer-すべてのトレーサー・インスタンスによって使用される トレーサー固有の構成
これらの設定値のほとんどは、環境変数を通じて設定することも可能です。 以下の設定を除き、アプリケーション内の構成は環境変数よりも優先されます。
INSTANA_SERVICE_NAMEを使用すると、コードに設定されているサービス名をオーバーライドできますINSTANA_PROCESS_NAMEを使用すると、Go プロセスを表すインフラストラクチャー・エンティティーの名前をオーバーライドできます。INSTANA_DEBUGを使用すると、アプリケーション・コード構成でより高いロギング・レベルが定義されていても、デバッグ・ログが有効になりますINSTANA_AUTO_PROFILEを使用すると、AutoProfile™ を使用する継続的なプロファイル作成が可能になります
サーバーレス環境での実行
Instana Go Collector を使用してサーバーレス環境 (AWS Fargate や Google Cloud Run など) で実行されているサービスをモニターするには、タスク定義に INSTANA_ENDPOINT_URL 変数と INSTANA_AGENT_KEY 環境変数が設定されていることを確認してください。 この場合、INSTANA_AGENT_HOST 環境変数および INSTANA_AGENT_PORT 環境変数は無視されることに注意してください。 具体的な手順については、 Instana のドキュメントの該当セクションを参照してください:
サーバーレス環境で実行されているサービスは、メトリクスやトレースデータを Instana バックエンドに送信するためにホストエージェントを使用しないため、通常のように ファイル configuration.yaml を使用してアプリ内センサーを設定する方法は適用できません。 代わりに、オプションとしてサービス・タスク定義で構成できる一連の環境変数があります。
INSTANA_TIMEOUTINSTANA_SECRETSINSTANA_EXTRA_HTTP_HEADERSINSTANA_ENDPOINT_PROXYINSTANA_TAGSINSTANA_ZONE
これらの変数およびその値の形式に関する詳細については、 「サーバーレス監視 」のセクションを参照してください。
Kafka トレース相関ヘッダー
Go トレーサーで使用される Kafka トレース相関ヘッダーの形式は、環境変数で設定できます INSTANA_KAFKA_HEADER_FORMAT。 有効な値は、 binary、 string、または bothです。
もう一つの方法は、 Instana ホストエージェントのレベルで、 Kafka トレース相関ヘッダーのフォーマットを設定することです。
詳しくは、 Kafka ヘッダー・マイグレーションを参照してください。