dynatrace.Dynatrace-Java-Agent
Dynatrace-Java-Agent-Ansible
Diese Ansible-Rolle installiert und konfiguriert den Dynatrace AppMon Agent der Dynatrace AppMon Lösung für einen Java-Prozess.
Hinweis: Diese Rolle macht den Dynatrace AppMon Agent für eine Java Virtual Machine verfügbar, indem eine geeignete -agentpath Option in eine Umgebungsvariable, z.B. JAVA_OPTS
, in einer Datei (typischerweise ein ausführbares Skript) injiziert wird. Es wird davon ausgegangen, dass dieses Skript den Java-Prozess direkt ausführt oder von einem anderen Skript aufgerufen wird, bevor der Java-Prozess ausgeführt wird. Sie müssen Ihre Anwendung nach dem Hinzufügen des Agents neu starten.
Beispiel
Wir haben eine Datei run-foo.sh
, die die main Methode in der Klasse Foo ausführt:
java Foo
Durch Ausführen dieser Rolle ändern wir den Inhalt der Datei wie folgt:
export JAVA_OPTS="$JAVA_OPTS -agentpath:/opt/dynatrace/agent/lib64/libdtagent.so=name=foo-java-agent,collector=localhost:9998"
java Foo
Download
Die Rolle ist verfügbar über:
Abhängigkeiten
Diese Rolle hängt von den folgenden Rollen ab:
Rolleneigenschaften
Wie in defaults/main.yml
definiert:
Name | Standard | Beschreibung |
---|---|---|
dynatrace_java_agent_env_var_name | JAVA_OPTS | Der Name der Umgebungsvariable, die für die Agenten-Injektion verwendet werden soll. |
dynatrace_java_agent_env_var_file_name | erforderlich | Der Name der Datei, die geändert werden soll. |
dynatrace_java_agent_env_var_file_insert_after | BOF | Ein Regex, BOF oder EOF für anfang der datei und ende der datei. Wenn das angegebene Regex nicht übereinstimmt, wird die -agentpath Option an die Datei angehängt. |
dynatrace_java_agent_name | java-agent | Der Name des Agents, wie er in Dynatrace AppMon erscheint. |
dynatrace_java_agent_collector_hostname | localhost | Der Standort des Collectors, mit dem der Agent verbunden werden soll. |
dynatrace_java_agent_collector_port | 9998 | Der Port am Collector, mit dem der Agent verbunden werden soll. |
dynatrace_java_agent_linux_agent_path | /opt/dynatrace/agent/lib64/libdtagent.so | Der Pfad zur Agent-Bibliothek. |
dynatrace_java_agent_state | present | Ob der Agent present oder absent sein soll. |
Beispiel-Playbook
- 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'
Testen
Wir verwenden Test Kitchen, um unsere automatisierten Bereitstellungen mit Serverspec und RSpec automatisch zu testen:
- Installieren Sie Test Kitchen und seine Abhängigkeiten im Verzeichnis des Projekts:
gem install bundler
bundle install
- Führen Sie alle Tests aus
kitchen test
Standardmäßig führen wir unsere Tests in Docker Containern durch, da dies die Testzeit erheblich verkürzt (siehe .kitchen.yml
).
Weitere Ressourcen
Blogs
- So automatisieren Sie die Überwachung von Unternehmensanwendungen mit Ansible
- So automatisieren Sie die Überwachung von Unternehmensanwendungen mit Ansible - Teil II
Präsentationen
- Automatisierte Bereitstellungen (von Dynatrace AppMon) mit Ansible
- Testgesteuerte Infrastruktur mit Ansible, Test Kitchen, Serverspec und RSpec
Probleme? Fragen? Vorschläge?
Dieses Angebot ist Von der Dynatrace-Community unterstützt. Fühlen Sie sich frei, Probleme, Fragen und Vorschläge mit Ihren Kollegen im Dynatrace-Community-Forum für Anwendungsüberwachung & UEM zu teilen.
Lizenz
Lizensiert unter der MIT-Lizenz. Siehe die LICENSE-Datei für Details.
An Ansible role for automated deployments of the Dynatrace Java Agent.
ansible-galaxy install dynatrace.Dynatrace-Java-Agent