elasticsearch - instalar - Kibana no muestra ningún resultado en la pestaña "Descubrir"
kibana requirements (11)
Configuré Elasticsearch y Kibana para indexar nuestros registros de aplicación (error). El problema es que Kibana no muestra ningún dato en la pestaña "Descubrir".
Situación actual
- Elasticsearch está en funcionamiento y responde a la API
-
ejecutar una consulta directamente en Elasticsearch como
http://elasticserver.com:9200/applogs/_search?q=*
devuelve muchos resultados (vea a continuación cómo se ve un solo registro encontrado) -
Kibana está en funcionamiento, incluso encuentra el índice de
applogs
expuesto por Elasticsearch -
Kibana también muestra las propiedades correctas y el tipo de datos de los documentos de
applogs
- La pestaña "Descubrir" no muestra ningún resultado ... incluso cuando establece el período de tiempo en un par de años ...
¿¿Algunas ideas??
Así
es
como Kibana ve el índice de
applogs
:
El objeto de resultado de consulta de búsqueda elástica se ve así:
{
_index: "applogs",
_type: "1",
_id: "AUxv8uxX6xaLDVAP5Zud",
_score: 1,
_source: {
appUid: "esb.Idman_v4.getPerson",
level: "trace",
message: "WS stopwatch is at 111ms.",
detail: "",
url: "",
user: "bla bla bla",
additionalInfo: "some more info",
timestamp: "2015-03-31T15:08:49"
}
},
..y lo que veo en la pestaña descubrir :
En mi situación, todo funcionaba anteriormente y luego no pude ver los últimos datos a partir del 1 de febrero (en realidad, podría hacerlo si mirara hacia atrás un mes).
Resulta que el formato de asignación para mi campo de tiempo personalizado era incorrecto.
Mi formato de mapeo era
YYYY-MM-DD''T''HH:mm:ss.SSSZ
.
El problema era que
DD
se interpreta como el día del año y quería el día del mes, que es
dd
.
Cambiar la asignación y reindexar solucionó el problema.
Kibana no entiende el campo de marca de tiempo , si su formato es incorrecto. La marca de tiempo , que seleccionó haciendo clic en el nombre del campo de tiempo al configurar un patrón de índice, debe ser:
"timestamp":"2015-08-05 07:40:20.123"
entonces deberías actualizar tu mapeo de índice de esta manera:
curl -XPUT ''http://localhost:9200/applogs/1/_mapping'' -d''
{
"1": {
"timestamp": {
"enabled": true,
"type": "date",
"format": "yyyy-MM-dd HH:mm:ss.SSS",
"store": true
}
}
}''
Ver esta pregunta y respuesta
ACTUALIZAR
Si está utilizando ES 2.X, puede establecer el
"format"
en
"epoch_millis"
esta manera:
curl -XPUT ''http://localhost:9200/applogs/1/_mapping'' -d''
{
"1": {
"timestamp": {
"type": "date",
"format": "epoch_millis",
"store": true,
"doc_values": true
}
}
}''
Para personas que tienen un problema como este:
Cambiar el marco de tiempo en la esquina superior derecha.
Por defecto muestra datos solo de los últimos 15 min .
Probablemente tuve el mismo problema: veo datos en el tablero pero 0 resultados en descubrimiento. Ir a Gestión> Patrón de índice> Botón Actualizar lista archivada (solo un botón con icono de actualización) lo resolvió por mí.
Quería poner esto como un comentario, pero desafortunadamente no puedo dar mi deficiente repositorio para hacerlo. Entonces, como sugirió @Ngeunpo, así es como agrega un campo de tiempo a un índice mientras lo crea: . Si no lo hizo al crear su índice, le sugiero que elimine ese índice y lo vuelva a crear. El nombre de índice logstash- * en el gif es análogo a sus registros de aplicaciones de índice. En este caso, el campo @ timestamp se agrega como el campo de tiempo. Hazme saber si esto funciona.
EDITAR: Imagen cortesía: esta maravillosa guía de configuración de ELK
También experimenté el mismo error. Principalmente esto sucede debido al formato de hora . Básicamente, asegúrese de tener un marco de tiempo válido para sus datos (filtro superior derecho). De todos modos, en mi caso, utilicé el formato de tiempo de época para la marca de tiempo, pero no funcionó. Así que cambié a epoch_millisec y funcionó a las mil maravillas .
En resumen, asegúrese de que Kibana pueda entender su formato de fecha y hora. Se requiere epoch_millisec por defecto, no solo epoch.
Tuve el mismo problema y esto funcionó para mí:
- Elimine el índice de la pestaña Configuración.
- reiniciar Kibana
- luego vuelva a agregar en Configuración
Los problemas con Time-Series, estoy seguro, también pueden ser un problema, pero si en realidad no aparecen campos en la pestaña Descubrir, es posible que tenga el mismo problema que el reportero original y lo que tenía.
Tuve el mismo problema, así que, como se muestra en una de las soluciones anteriores, fui a la configuración y eliminé el índice anterior e hice un nuevo con @timestamp.
Pero eso no resolvió el problema. Entonces, investigué el problema y vi que, después de un despliegue, no había nada en Kibana.
Entonces, entré en el servidor y vi que los índices estaban dañados. Entonces, detuve logstash y elasticsearch en la instancia / servidor y reinicié el servicio. Y Voila, reinició con éxito el servicio y Kibana regresó.
POR QUÉ SUCEDIÓ ?
Alguien pudo haber detenido el servidor abruptamente, lo que provocó que los índices se corrompieran.
Tuve el mismo problema, pero ahora funciona bien.
El problema fue con el @timestamp.
En realidad, he subido el archivo a
logstash
usando
logstash
lo que genera automáticamente un campo @timestamp.
Kibana
compara el intervalo de tiempo con esta marca de tiempo @, es decir, cuando ocurrió el evento real.
kibana
si
kibana
selección de la opción "El índice contiene eventos basados en el tiempo" al agregar una nueva página de patrón de índice,
kibana
considerará automáticamente el campo @ timestamp. El tiempo en
kibana
basado en el campo @timestamp funcionó para mí.
También puede verificar agregando un patrón de índice sin una marca de tiempo y deseleccionando la opción "El índice contiene eventos basados en el tiempo". Vea lo que sucede ... ahora no habrá ninguna opción de selección de marco de tiempo en la página de descubrimiento de
kibana
y probablemente obtendrá el resultar en descubrir la página.
Estas son todas mis observaciones, no estoy seguro, esta solución se adapta a su caso ... puede intentarlo. Estoy usando ES 1.5x, logstash 1.5.1 y kibana 4.1.0
Tuve el mismo problema, y el comentario de @ tAn- me ayudó a resolverlo. Cambiar el campo de fecha a @timestamp hizo el truco. Gracias!
El siguiente paso debería ser descubrir que estaba mal con mi campo de fecha personalizado.
Pruebe esto: desmarque la casilla de verificación "El índice contiene eventos basados en el tiempo" y luego proporcione su nombre de índice y luego marque "Descubrir" si contiene datos o no