L'integrazione di Apache Solr raccoglie le metriche relative a core e cache. Le metriche principali si concentrano su richieste, conteggio dei documenti e dimensioni dell'indice. Le metriche della cache si concentrano sull'utilizzo della cache. L'integrazione raccoglie anche i log Solr e li analizza in un payload JSON. Il risultato include campi per shard, replica, core, livello e messaggio.
Per ulteriori informazioni su Solr, visita solr.apache.org/.
Prerequisiti
Per raccogliere e importare log e metriche di Solr, devi installare l'agente operativo versione 2.10.0 o successiva.
Questo ricevitore supporta Apache Solr versioni 7.7 e 8.x.
Configura la tua istanza di Solr
Per esporre un endpoint JMX, devi impostare la proprietà di sistema com.sun.management.jmxremote.port
all'avvio della JVM. Ti consigliamo inoltre di impostare la
proprietà del sistema com.sun.management.jmxremote.rmi.port
sulla stessa porta. Per
esporre un endpoint JMX da remoto, devi anche impostare la proprietà
di sistema java.rmi.server.hostname
.
Per impostazione predefinita, queste proprietà sono impostate in un file solr-env.sh
di Solr deployment.
Per impostare le proprietà di sistema utilizzando argomenti della riga di comando, anteponi il nome della proprietà a -D
all'avvio di JVM. Ad esempio, per impostare
com.sun.management.jmxremote.port
sulla porta 18983
, specifica quanto segue all'avvio di
JVM:
-Dcom.sun.management.jmxremote.port=18983
Configura l'agente operativo per Solr
Segui la guida per configurare l'agente operativo, aggiungi gli elementi obbligatori per raccogliere i log e le metriche delle istanze Solr e riavvia l'agente.
Configurazione di esempio
Il comando seguente crea il file di configurazione per raccogliere e importare log e metriche per Solr e riavvia l'agente operativo su Linux.
sudo tee /etc/google-cloud-ops-agent/config.yaml > /dev/null << EOF
logging:
receivers:
solr_system:
type: solr_system
service:
pipelines:
solr:
receivers:
- solr_system
metrics:
receivers:
solr:
type: solr
service:
pipelines:
solr:
receivers:
- solr
EOF
sudo service google-cloud-ops-agent restart
Configura la raccolta dei log
Per importare i log di Solr, devi creare dei destinatari per i log prodotti da Solr, quindi creare una pipeline per i nuovi destinatari. Per configurare un ricevitore per i log solr_system
, specifica i seguenti campi:
Campo | predefinita | Descrizione |
---|---|---|
type |
Il valore deve essere solr_system . |
|
include_paths |
[/var/solr/logs/solr.log ] |
I file di log da leggere. |
exclude_paths |
I file di log da escludere, se include_paths contiene un glob o una directory. |
|
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. |
Che cosa viene registrato
I logName
dei log solr_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.collection |
string | Raccolta di risorse correlate al log. |
jsonPayload.shard |
string | shard risolutore correlato al log. |
jsonPayload.replica |
string | Replica di risolutore correlata al log. |
jsonPayload.core |
string | Il core del risolutore si riferisce al log. |
jsonPayload.source |
string | Origine della provenienza del log. |
jsonPayload.thread |
string | Thread da cui ha avuto origine il log. |
jsonPayload.message |
string | Messaggio di log. |
jsonPayload.exception |
string | Eccezione relativa al log, inclusa l'analisi dello stack dettagliata, se fornita. |
severity |
stringa (LogSeverity ) |
Livello di voce di log (tradotto). |
Configurazione della raccolta di metriche
Per raccogliere metriche da Solr, devi creare un ricevitore per le metriche Solr, quindi creare una pipeline per il nuovo ricevitore. Per configurare un ricevitore per le metriche Solr, specifica i seguenti campi:
Campo | predefinita | Descrizione |
---|---|---|
type |
Il valore deve essere solr . |
|
endpoint |
localhost:18983 |
URL del servizio JMX oppure host e porta utilizzati per creare l'URL del servizio. Deve essere host:port . I valori nel modulo host:port verranno utilizzati per creare un URL di servizio per service:jmx:rmi:///jndi/rmi://<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 . |
Che cosa viene monitorato
La seguente tabella fornisce l'elenco delle metriche che l'agente operativo raccoglie dall'istanza Solr.
Tipo di metrica | |
---|---|
Tipo, tipo Risorse monitorate |
Etichette |
workload.googleapis.com/solr.cache.eviction.count
|
|
CUMULATIVE , INT64 gce_instance |
cache
core
|
workload.googleapis.com/solr.cache.hit.count
|
|
CUMULATIVE , INT64 gce_instance |
cache
core
|
workload.googleapis.com/solr.cache.insert.count
|
|
CUMULATIVE , INT64 gce_instance |
cache
core
|
workload.googleapis.com/solr.cache.lookup.count
|
|
CUMULATIVE , INT64 gce_instance |
cache
core
|
workload.googleapis.com/solr.cache.size
|
|
GAUGE , INT64 gce_instance |
cache
core
|
workload.googleapis.com/solr.document.count
|
|
GAUGE , INT64 gce_instance |
core
|
workload.googleapis.com/solr.index.size
|
|
GAUGE , INT64 gce_instance |
core
|
workload.googleapis.com/solr.request.count
|
|
CUMULATIVE , INT64 gce_instance |
handler
core
type
|
workload.googleapis.com/solr.request.error.count
|
|
CUMULATIVE , INT64 gce_instance |
handler
core
type
|
workload.googleapis.com/solr.request.time.average
|
|
GAUGE , DOUBLE gce_instance |
handler
core
type
|
workload.googleapis.com/solr.request.timeout.count
|
|
CUMULATIVE , INT64 gce_instance |
handler
core
type
|
Verificare la configurazione
Puoi utilizzare Esplora log e Esplora metriche per verificare di aver configurato correttamente il ricevitore Solr. 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 del risolutore:
resource.type="gce_instance"
logName=("projects/PROJECT_ID/logs/solr_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/solr.request.count'
| align rate(1m)
| every 1m