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:

  1. Installieren Sie Test Kitchen und seine Abhängigkeiten im Verzeichnis des Projekts:
gem install bundler
bundle install
  1. 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

Präsentationen

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.

Über das Projekt

An Ansible role for automated deployments of the Dynatrace Java Agent.

Installieren
ansible-galaxy install dynatrace.Dynatrace-Java-Agent
GitHub Repository
Lizenz
mit
Downloads
1.5k
Besitzer
Dynatrace