L'integrazione di WildFly raccoglie i log di WildFly e li analizza in un payload JSON. Il risultato include origine, codice, livello e messaggio.
Per ulteriori informazioni su WildFly, consulta wildfly.org/.
Prerequisiti
Per raccogliere e importare log WildFly, devi installare Ops Agent versione 2.12.0 o successive.
Questo ricevitore supporta le versioni 25.x e 26.x di WildFly.
Configura la tua istanza di WildFly
Per esporre l'endpoint JMX da remoto, devi impostare la proprietà di sistema
jboss.bind.address.management
. Per impostazione predefinita, questa proprietà è
impostata nella configurazione di WildFly. L'installazione WildFly predefinita non richiede l'autenticazione JMX
con JMX esposto localmente su 127.0.0.1:9990
.
Per raccogliere le metriche della sessione, devi abilitare le statistiche sul sottosistema SubTow eseguendo il comando seguente utilizzando l'interfaccia a riga di comando JBoss:
/subsystem=undertow:write-attribute(name=statistics-enabled,value=true)
Configurazione dell'agente operativo per WildFly
Segui la guida per configurare l'agente operativo, aggiungi gli elementi obbligatori per raccogliere i log dalle istanze di WildFly e riavvia l'agente.
Configurazione di esempio
Il comando seguente crea il file di configurazione per raccogliere e importare i log per WildFly e riavvia l'agente operativo su Linux.
sudo tee /etc/google-cloud-ops-agent/config.yaml > /dev/null << EOF
logging:
receivers:
wildfly_system:
type: wildfly_system
service:
pipelines:
wildfly_system:
receivers:
- wildfly_system
metrics:
receivers:
wildfly:
type: wildfly
service:
pipelines:
wildfly:
receivers:
- wildfly
EOF
sudo service google-cloud-ops-agent restart
Configura la raccolta dei log
Per importare i log di WildFly, devi creare ricevitori per i log prodotti da WildFly, quindi creare una pipeline per i nuovi destinatari. Per configurare un
ricevitore per i log wildfly_system
, specifica i seguenti campi:
Campo | predefinita | Descrizione |
---|---|---|
type |
Il valore deve essere wildfly_system . |
|
include_paths |
[/opt/wildfly/standalone/log/server.log, /opt/wildfly/domain/servers/*/log/server.log] |
Un elenco di percorsi di filesystem da leggere mettendo in coda ogni file. Nei percorsi è possibile utilizzare un carattere jolly (* ), ad esempio /var/log/wildfly*/*.log . |
exclude_paths |
Un elenco di pattern di file system da escludere dall'insieme corrispondente da include_paths . |
|
wildcard_refresh_interval |
60s |
L'intervallo a cui vengono aggiornati i percorsi dei file con caratteri jolly in include_paths . È indicato come durata, ad esempio 30s o 2m . Questa proprietà potrebbe essere utile in presenza di velocità effettiva di logging elevate, in cui i file di log vengono ruotati più rapidamente rispetto all'intervallo predefinito. Deve essere un multiplo di 1 s. |
Che cosa viene registrato
I logName
dei log wildfly_system
sono ricavati dagli ID destinatario specificati nella configurazione. Di seguito sono riportati i campi dettagliati all'interno di LogEntry
.
Campo | Tipo | Descrizione |
---|---|---|
timestamp |
stringa (Timestamp ) |
Ora in cui è stata ricevuta la richiesta. |
jsonPayload.thread |
string | Thread da cui ha origine il log. |
jsonPayload.source |
string | Origine della generazione del log. |
jsonPayload.messageCode |
string | Codice di messaggio specifico di Wildfly che precede il log, dove applicabile. |
jsonPayload.message |
string | Messaggio di log. |
severity |
stringa (LogSeverity ) |
Livello di voce di log (tradotto). |
Le voci dei log non contengono campi vuoti o mancanti.
Configurazione della raccolta di metriche
Per raccogliere metriche da WildFly, devi creare un ricevitore per le metriche WildFly, quindi creare una pipeline per il nuovo destinatario. Per configurare un ricevitore per le metriche WildFly, specifica i seguenti campi:
Campo | predefinita | Descrizione |
---|---|---|
type |
Questo valore deve essere wildfly . |
|
endpoint |
service:jmx:remote+http://localhost:9990 |
L'URL o l'host di servizio JMX utilizzato per creare l'URL del servizio. Questo valore deve essere nel formato host:port , utilizzato per creare un URL di servizio di service:jmx:remote+http://<host>:<port>/jmxrmi . |
username |
Il nome utente configurato se JMX è configurato in modo da richiedere l'autenticazione. | |
password |
La password configurata se JMX è configurato per richiedere l'autenticazione. | |
collection_interval |
60s |
Un valore time.Duration, ad esempio 30s o 5m . |
additional_jars |
/opt/wildfly/bin/client/jboss-client.jar |
Il percorso al file jboss-client.jar , necessario per monitorare WildFly tramite JMX. |
Che cosa viene monitorato
La seguente tabella fornisce l'elenco delle metriche che l'agente operativo raccoglie dall'istanza WildFly.
Tipo di metrica | |
---|---|
Tipo, tipo Risorse monitorate |
Etichette |
workload.googleapis.com/wildfly.jdbc.connection.open
|
|
GAUGE , INT64 gce_instance |
state
data_source
|
workload.googleapis.com/wildfly.jdbc.request.wait
|
|
CUMULATIVE , INT64 gce_instance |
data_source
|
workload.googleapis.com/wildfly.jdbc.rollback.count
|
|
CUMULATIVE , INT64 gce_instance |
cause
|
workload.googleapis.com/wildfly.jdbc.transaction.count
|
|
CUMULATIVE , INT64 gce_instance |
|
workload.googleapis.com/wildfly.network.io
|
|
CUMULATIVE , INT64 gce_instance |
state
listener
server
|
workload.googleapis.com/wildfly.request.count
|
|
CUMULATIVE , INT64 gce_instance |
listener
server
|
workload.googleapis.com/wildfly.request.server_error
|
|
CUMULATIVE , INT64 gce_instance |
listener
server
|
workload.googleapis.com/wildfly.request.time
|
|
CUMULATIVE , DOUBLE gce_instance |
listener
server
|
Dashboard di esempio
Puoi visualizzare le metriche di questa integrazione utilizzando una dashboard di Cloud Monitoring di esempio. Completa la procedura per l'installazione delle dashboard di esempio per importare la dashboard WildFly GCE Overview dalla libreria di esempio e visualizza i grafici che mostrano le metriche WildFly.Verificare la configurazione
Puoi utilizzare Esplora log e Esplora metriche per verificare di avere configurato correttamente il ricevitore WildFly. L'avvio della raccolta di log e metriche da parte dell'agente operativo potrebbe richiedere uno o due minuti.
Per verificare l'importazione dei log, vai a Esplora log ed esegui la query seguente per visualizzare i log di WildFly:
resource.type="gce_instance"
logName=("projects/PROJECT_ID/logs/wildfly_system")
Per verificare l'importazione delle metriche, accedi a Metrics Explorer ed esegui la query seguente nella scheda MQL.
fetch gce_instance
| metric 'workload.googleapis.com/wildfly.request.count'
| align rate(1m)
| every 1m