QUESTION: comment déboguer kibana? Y a-t-il un journal des erreurs?
DÉTAILS: Voici moi qui commence kibana, demande au port, ne récupère rien et contrôle à nouveau le service. Le service ne reste pas actif, mais je ne sais pas pourquoi.
vagrant@default-ubuntu-1204:/opt/kibana/current/config$ Sudo service kibana start
kibana start/running, process 11774
vagrant@default-ubuntu-1204:/opt/kibana/current/config$ curl -XGET 'http://localhost:5601'
curl: (7) couldn't connect to Host
vagrant@default-ubuntu-1204:/opt/kibana/current/config$ Sudo service kibana status
kibana stop/waiting
Voici le journal nginx, indiquant le moment où je curl -XGET à partir du port 80, qui transfère au port 5601:
2015/06/15 17:32:17 [error] 9082#0: *11 connect() failed (111: Connection refused) while connecting to upstream, client: 127.0.0.1, server: kibana, request: "GET / HTTP/1.1", upstream: "http://127.0.0.1:5601/", Host: "localhost"
UPDATE: J'ai peut-être un peu trop réfléchi à cela. Je suis toujours intéressé par les moyens de voir le journal de kibana, cependant! Toutes les suggestions sont appréciées!
J'ai remarqué que lorsque j'exécute kibana à partir de la ligne de commande, des erreurs plus descriptives que "Connexion refusée" apparaissent:
vagrant@default-ubuntu-1204:/opt/kibana/current$ bin/kibana
{"@timestamp":"2015-06-15T22:04:43.344Z","level":"error","message":"Service Unavailable","node_env":"production","error":{"message":"Service Unavailable","name":"Error","stack":"Error: Service Unavailable\n at respond (/usr/local/kibana-4.0.2/src/node_modules/elasticsearch/src/lib/transport.js:235:15)\n at checkRespForFailure (/usr/local/kibana-4.0.2/src/node_modules/elasticsearch/src/lib/transport.js:203:7)\n at HttpConnector.<anonymous> (/usr/local/kibana-4.0.2/src/node_modules/elasticsearch/src/lib/connectors/http.js:156:7)\n at IncomingMessage.bound (/usr/local/kibana-4.0.2/src/node_modules/elasticsearch/node_modules/lodash-node/modern/internals/baseBind.js:56:17)\n at IncomingMessage.emit (events.js:117:20)\n at _stream_readable.js:944:16\n at process._tickCallback (node.js:442:13)\n"}}
{"@timestamp":"2015-06-15T22:04:43.346Z","level":"fatal","message":"Service Unavailable","node_env":"production","error":{"message":"Service Unavailable","name":"Error","stack":"Error: Service Unavailable\n at respond (/usr/local/kibana-4.0.2/src/node_modules/elasticsearch/src/lib/transport.js:235:15)\n at checkRespForFailure (/usr/local/kibana-4.0.2/src/node_modules/elasticsearch/src/lib/transport.js:203:7)\n at HttpConnector.<anonymous> (/usr/local/kibana-4.0.2/src/node_modules/elasticsearch/src/lib/connectors/http.js:156:7)\n at IncomingMessage.bound (/usr/local/kibana-4.0.2/src/node_modules/elasticsearch/node_modules/lodash-node/modern/internals/baseBind.js:56:17)\n at IncomingMessage.emit (events.js:117:20)\n at _stream_readable.js:944:16\n at process._tickCallback (node.js:442:13)\n"}}
vagrant@default-ubuntu-1204:/opt/kibana/current$
Kibana 4 enregistre stdout
par défaut. Voici un extrait du config/kibana.yml
default:
# Enables you specify a file where Kibana stores log output.
# logging.dest: stdout
Ainsi, lorsque vous l'appelez avec service
, utilisez la méthode de capture de journal de ce service. Par exemple, sur une distribution Linux utilisant Systemd/systemctl (par exemple, RHEL 7+):
journalctl -u kibana.service
Un moyen peut être de modifier les scripts d'initialisation pour utiliser l'option --log-file
(si elle existe toujours), mais je pense que la solution appropriée consiste à configurer correctement votre fichier YAML d'instance. Par exemple, ajoutez ceci à votre config/kibana.yml
:
logging.dest: /var/log/kibana.log
Notez que le processus Kibana doit pouvoir écrire dans le fichier que vous spécifiez, sinon le processus mourra sans information (cela peut être assez déroutant).
En ce qui concerne l'option --log-file
, je pense que cette option est réservée aux opérations CLI plutôt qu'à l'automatisation.
Dans kibana 4.0.2, il n'y a pas d'option --log-file. Si je lance kibana en tant que service avec systemctl start kibana
, je me connecte /var/log/messages
Il semble que vous deviez passer un indicateur "-l, --log-file"
https://github.com/elastic/kibana/issues/3407
Usage: kibana [options]
Kibana is an open source (Apache Licensed), browser based analytics and search dashboard for Elasticsearch.
Options:
-h, --help output usage information
-V, --version output the version number
-e, --elasticsearch <uri> Elasticsearch instance
-c, --config <path> Path to the config file
-p, --port <port> The port to bind to
-q, --quiet Turns off logging
-H, --Host <Host> The Host to bind to
-l, --log-file <path> The file to log to
--plugins <path> Path to scan for plugins
Si vous utilisez le script init pour exécuter en tant que service, vous devrez peut-être le personnaliser.
Kibana n'a pas de fichier journal par défaut. mais vous pouvez le configurer à l'aide de la propriété serveur log_fichier Kibana - https://www.elastic.co/guide/en/kibana/current/kibana-server-properties.html
Pour kibana 6.x sous Windows, éditez le raccourci vers le dossier "kibana -l".