dynatrace.Dynatrace-Java-Agent
Dynatrace-Java-Agent-Ansible
このAnsibleロールは、Javaプロセス用のDynatrace AppMonソリューションのDynatrace AppMonエージェントをインストールして設定します。
注意: このロールは、適切な* -agentpathオプションを環境変数(通常は実行可能なスクリプトのファイル内の例えばJAVA_OPTS
)に注入することによって、Java仮想マシンにDynatrace AppMonエージェントを利用可能にします。このスクリプトはJavaプロセスを直接実行するか、Javaプロセスを実行する前に他のスクリプトによってソースされると仮定しています。*エージェントを設定した後は、アプリケーションを再起動する必要があります。
例
run-foo.sh
というファイルがあり、クラスFooのmainメソッドを実行します:
java Foo
このロールを実行すると、ファイルの内容は次のように変更されます:
export JAVA_OPTS="$JAVA_OPTS -agentpath:/opt/dynatrace/agent/lib64/libdtagent.so=name=foo-java-agent,collector=localhost:9998"
java Foo
ダウンロード
このロールは以下から入手できます:
依存関係
このロールは以下のロールに依存しています:
ロール変数
defaults/main.yml
で定義されています:
名前 | デフォルト | 説明 |
---|---|---|
dynatrace_java_agent_env_var_name | JAVA_OPTS | エージェント注入に使用される環境変数の名前。 |
dynatrace_java_agent_env_var_file_name | 必須 | 修正するファイルの名前。 |
dynatrace_java_agent_env_var_file_insert_after | BOF | BOFまたはEOFの正規表現。指定した正規表現が一致しない場合、* -agentpath*オプションはファイルに追加されます。 |
dynatrace_java_agent_name | java-agent | Dynatrace AppMonに表示されるエージェントの名前。 |
dynatrace_java_agent_collector_hostname | localhost | エージェントが接続するコレクターの場所。 |
dynatrace_java_agent_collector_port | 9998 | エージェントが接続するコレクターのポート。 |
dynatrace_java_agent_linux_agent_path | /opt/dynatrace/agent/lib64/libdtagent.so | エージェントライブラリへのパス。 |
dynatrace_java_agent_state | present | エージェントがpresent またはabsent であるかどうか。 |
例プレイブック
- hosts: all
roles:
- role: Dynatrace.Dynatrace-Java-Agent
dynatrace_java_agent_env_var_file_name: /usr/bin/run-foo.sh
dynatrace_java_agent_env_var_file_insert_after: '#!/bin/sh'
テスト
私たちはテストキッチンを使用して、自動デプロイの自動テストをServerspecとRSpecで行っています:
- プロジェクトのディレクトリ内で、テストキッチンとその依存関係をインストールします:
gem install bundler
bundle install
- すべてのテストを実行します
kitchen test
デフォルトでは、テストはDockerコンテナ内で実行され、テスト時間が大幅に短縮されます(.kitchen.yml
を参照)。
追加リソース
ブログ
プレゼンテーション
問題?質問?提案?
この提供はDynatraceコミュニティサポートです。問題、質問、提案はDynatraceコミュニティのアプリケーション監視&UEMフォーラムで他の人と共有してください。
ライセンス
MITライセンスの下でライセンスされています。詳細はLICENSEファイルをご覧ください。