Uso gli script in modo aggressivo per il punteggio e l'aggregazione. Una cosa che non riesco a capire è come emettere i log dallo script. Ho provato console.log, ma poi non ha funzionato. Fammi sapere, come posso emettere i log dal mio script groovy.Registro accessi dallo script Elasticsearch
7
A
risposta
9
Questo può essere fatto accedendo all'istanza del logger Elasticsearch globale. Il suo esempio di groovy è riportato sotto Dovresti essere in grado di fare qualcosa di simile anche per javascript e altri linguaggi di scripting.
import org.elasticsearch.common.logging.*;
ESLogger logger=ESLoggerFactory.getLogger('myscript');
logger.info('This is a log message');
Quindi, quando si fa un aggregazione termini, si può fare qualcosa di simile qui sotto -
"aggregations": {
"debug":{
"terms":{
"script":"import org.elasticsearch.common.logging.*; ESLogger logger=ESLoggerFactory.getLogger('myscript'); logger.info('This is a log message'); return doc['myField'].value;"
}
}
}
Alcune buone gente da elasticsearch ha dato una buona documentazione su di esso nei confronti di un problema.
LINK - https://github.com/elasticsearch/elasticsearch/issues/9068
Ho anche dato alcuni esempi here.
Problemi correlati
- 1. Registrazione solo da registro Python dallo script
- 2. uscita colorato dallo script tessuto
- 3. sceneggiatura carico dallo script Groovy
- 4. Ottieni il percorso per lo script Swift dallo script
- 5. valore di ritorno dallo script python allo script di shell
- 6. Lo script PHP non può essere emesso dallo script Python
- 7. Esegui script (remoto) php dallo script python (locale)
- 8. Come usare pastebin dallo script di shell?
- 9. MYSQL differisce in Output dallo script
- 10. Uscita da shell Spark dallo script scala
- 11. Julia richiede l'input dell'utente dallo script
- 12. Ottieni l'eseguibile PHP corrente dallo script?
- 13. start node app dallo script python
- 14. restituendo JSON e HTML dallo script PHP
- 15. "Crea pacchetto di distribuzione" VS2010 dallo script
- 16. Esegui un'applicazione C# dallo script python
- 17. Riferimento ai pacchetti NuGet dallo script csx
- 18. Chiama l'API REST dallo script PowerShell
- 19. come modificare exe.config dallo script Innosetup
- 20. Tipo di conversione in script elasticsearch
- 21. Come posso eseguire l'aggregazione tramite script in Kibana + Elasticsearch?
- 22. Come eseguire l'output su console dallo script Redis Lua?
- 23. Output del registro di script personalizzato Teamcity
- 24. Gestione accessi IAM AWS
- 25. Controllo accessi Cassandra
- 26. File.WriteAllText e accessi simultanei
- 27. WSGI/Django: passa il nome utente ad Apache per il registro degli accessi
- 28. Jenkins: impostazione della variabile env dallo script di shell
- 29. Come scaricare il file dallo script di bash
- 30. JavaScript - Come nascondere lo scope globale dallo script eval'd
Per coloro che utilizzano Elasticsearch 2.2 o versioni successive, è necessario consentire espressamente l'importazione delle classi. Vedi http://stackoverflow.com/questions/36820449/elasticsearch-unable-to-import-logger – Aaron