Versiones comparadas

Clave

  • Se ha añadido esta línea.
  • Se ha eliminado esta línea.
  • El formato se ha cambiado.

n esta página se pretende identificar los distintos tipos de log que podemos encontrar en los index-pattern de cada aplicación FundeWebJS en LAGAR, así como describir cada campo para poder conocer en profundidad la estructura de dichos logs.

Además, se enumerará el listado de objetos predeterminados (consultas, visualizaciones y paneles) que se proporciona desde MNCS cuando se realiza el alta de la aplicación en LAGAR.

Por último se explicará cómo loggear en nuestro backend java para que aparezcan en LAGAR automáticamente nuevos campos por los que poder consultar y filtrar de manera más ágil y eficiente.

1. Descripción de LOGS

Lo primero que hay que mencionar a la hora de hablar de los logs en FundeWebJS es que nuestras aplicaciones pueden tener parte front en VUE (aplicación UI) y parte backend en Java/Spring Boot (aplicación API).
Esto implica que tenemos dos servidores web (uno para la parte UI y otro para API) que están mandando logs al mismo index-pattern de nuestra aplicacion en LAGAR.

Un index-pattern en LAGAR es la colección de todos los índices de nuestra aplicación en un mismo entorno. Por ejemplo, si tenemos un index-pattern k8s-consultaexp-ns-desa@*, este index-pattern contendrá todos los logs de la aplicación "Consulta de Expedientes" en el entorno de desarrollo.

Dicho esto, podemos distinguir los siguientes tipos de log.

Tipos de LOGS:


  • Logs de peticiones HTTP (Accesslog). El típico log access de apache que podemos encontrar en nuestras aplicaciones FundeWeb normales. Por ejemplo: Fichero accesslog de Portalfundeweb.


    Bloque de código
    languagetext
    titleEjemplo Accesslog
    155.54.228.21 - - [07/Jun/2021:17:32:55 +0000] "GET /consultaexpedientes/rest/v1.0/private/titulaciones/XXXXXXX HTTP/1.1" 200 769 "https://micampusdesa.um.es/consulta/expedienteacademico/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.77 Safari/537.36" "155.54.67.188" 340


  • Logs del backend Java/Spring-Boot (Log4j2).  El log java habitual de nuestros servicios en la parte API, configurados como se indica en la página: 12. Logs en Spring Boot. En equivalente FundeWeb, el habitual log application de nuestra aplicación. 


    Bloque de código
    languagejson
    titleEjemplo log backend java
    {
    	"line_number": 377,
    	"class": "es.um.atica.consultaexpedientesbackend.rest.RestExpedientes",
    	"@version": 1,
    	"source_host": "consultaexp-api-deployment-desa-5499587c9f-kx8gs",
    	"message": " ############################################### titulaciones: XXXXXXX",
    	"thread_name": "http-nio-8080-exec-10",
    	"_@timestamp": "2021-06-07T17:32:54.983+00:00",
    	"level": "INFO",
    	"file": "RestExpedientes.java",
    	"method": "getTitulaciones",
    	"logger_name": "es.um.atica.consultaexpedientesbackend.rest.RestExpedientes"
    }


Info

Tanto UI como API mandan a LAGAR logs de tipo Accesslog

Solo API manda a LAGAR logs de tipo Log4j2.


-"Vale, pero ¿cómo se yo de qué tipo es cada log de forma rápida?"

En cada registro de LAGAR para aplicaciones FundeWebJS tenemos dos campos que nos indicarán rápidamente el tipo de log con el que estamos trabajando:

  • kubernetes.log.type:  Tiene los valores:
    • kube_apli            => El log es de tipo Log4j2 (backend java)
    • kube_acces_log => El log es una petición HTTP (acesslog)
  • kubernetes.container_name: Tiene los valores:
    • api => El log proviene del servicio API
    • ui   => El log proviene del servicio UI

Con la combinación de estos campos podemos saber el tipo de log y el servicio que está generando el log.

Ejemplo: "Quiero ver todos los logs de mi servicio en el backend java" => Establecemos el filtro kubernetes.log.type: kub

Desde MNCS se proporcionan varias consultas guardadas donde están configurados filtros sobre estos campos. Se mostrarán en el siguiente apartado.


-"Vale, pero cada log tiene muchos campos ¿cómo se yo a qué corresponde cada campo?"

Efectivamente, los logs de aplicaciones FundeWebJS se almacenan en LAGAR como un gran documento JSON.
Este JSON contiene de forma encapsulada el log de la aplicación/accesslog, los metadatos de Kubernetes y los metadatos de Elastic.


Esta es la estructura desglosada de cada evento de log en LAGAR:


Bloque de código
languagejson
titleEvento accesslog - LAGAR
linenumberstrue
collapsetrue
{
  "_index": "k8s-consultaexp-ns-desa@2021.23",
  "_type": "_doc",
  "_id": "MvlS7HkBt6ITkvetuPXP",
  "_version": 1,
  "_score": null,
  "_source": {
    "source": {
      "ip": "155.54.67.188"
    },
    "user": {
      "email": "-"
    },
    "time": "2021-06-08T15:51:53.627305882Z",
    "kubernetes": {
      "labels": {
        "author": "campusvirtual",
        "app": "api",
        "pod-template-hash": "5499587c9f"
      },
      "namespace_name": "consultaexp-ns-desa",
      "host": "155.54.228.21",
      "docker_id": "ebf5e81608c2d6b3bd25f16c81b9931ac6810595086c6ea1e9fbf880cf74d5d2",
      "pod_id": "48733f4e-9f95-40ae-a560-373154829bc8",
      "log": {
        "type": "kube_acces_log"
      },
      "container_name": "api",
      "annotations": {
        "cni.projectcalico.org/podIP": "10.42.148.90/32",
        "field.cattle.io/ports": "[[{\"containerPort\":8080,\"dnsName\":\"consultaexp-api-deployment-desa\",\"kind\":\"ClusterIP\",\"name\":\"8080tcp2\",\"protocol\":\"TCP\"}]]",
        "cattle.io/timestamp": "2021-02-04T12:09:09Z",
        "cni.projectcalico.org/podIPs": "10.42.148.90/32",
        "field.cattle.io/publicEndpoints": "[{\"addresses\":[\"155.54.228.21\",\"155.54.228.22\",\"155.54.228.23\"],\"hostname\":\"micampusdesa.um.es\",\"ingressId\":\"consultaexp-ns-desa:consultaexp-api-ingress-desa\",\"path\":\"/consulta/expedienteacademico\",\"port\":80,\"protocol\":\"HTTP\",\"serviceId\":\"consultaexp-ns-desa:consultaexp-api-service-desa\"}]"
      },
      "container_hash": "registry.um.es:443/mncs/consulta-expedientes-api@sha256:53d5dc41868a6dc36523c8c75d0ae9372b2c4d38729256ac0ce0d96348a7acd8",
      "container_image": "registry.um.es:443/mncs/consulta-expedientes-api:0.0.540570",
      "pod_name": "consultaexp-api-deployment-desa-5499587c9f-kx8gs"
    },
    "http": {
      "access": {
        "time": "08/Jun/2021:15:51:53 +0000"
      },
      "response": {
        "status_code": "200",
        "body": {
          "bytes": "769",
          "delay": "292"
        }
      },
      "request": {
        "method": "GET",
        "referer": "https://micampusdesa.um.es/consulta/expedienteacademico/"
      },
      "user_agent": {
        "original": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.77 Safari/537.36"
      },
      "version": "1.1"
    },
    "@timestamp": "2021-06-08T15:51:53.000Z",
    "log": "10.42.49.192 - - [08/Jun/2021:15:51:53 +0000] \"GET /consultaexpedientes/rest/v1.0/private/titulaciones/XXXXXX HTTP/1.1\" 200 769 \"https://micampusdesa.um.es/consulta/expedienteacademico/\" \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.77 Safari/537.36\" \"155.54.67.188\" 292\n",
    "message": "{\"_@timestamp\":1623167513.627306,\"log\":\"10.42.49.192 - - [08/Jun/2021:15:51:53 +0000] \\\"GET /consultaexpedientes/rest/v1.0/private/titulaciones/23274740 HTTP/1.1\\\" 200 769 \\\"https://micampusdesa.um.es/consulta/expedienteacademico/\\\" \\\"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.77 Safari/537.36\\\" \\\"155.54.67.188\\\" 292\\n\",\"stream\":\"stdout\",\"time\":\"2021-06-08T15:51:53.627305882Z\",\"kubernetes\":{\"pod_name\":\"consultaexp-api-deployment-desa-5499587c9f-kx8gs\",\"namespace_name\":\"consultaexp-ns-desa\",\"pod_id\":\"48733f4e-9f95-40ae-a560-373154829bc8\",\"labels\":{\"app\":\"api\",\"author\":\"campusvirtual\",\"pod-template-hash\":\"5499587c9f\"},\"annotations\":{\"cattle.io/timestamp\":\"2021-02-04T12:09:09Z\",\"cni.projectcalico.org/podIP\":\"10.42.148.90/32\",\"cni.projectcalico.org/podIPs\":\"10.42.148.90/32\",\"field.cattle.io/ports\":\"[[{\\\"containerPort\\\":8080,\\\"dnsName\\\":\\\"consultaexp-api-deployment-desa\\\",\\\"kind\\\":\\\"ClusterIP\\\",\\\"name\\\":\\\"8080tcp2\\\",\\\"protocol\\\":\\\"TCP\\\"}]]\",\"field.cattle.io/publicEndpoints\":\"[{\\\"addresses\\\":[\\\"155.54.228.21\\\",\\\"155.54.228.22\\\",\\\"155.54.228.23\\\"],\\\"hostname\\\":\\\"micampusdesa.um.es\\\",\\\"ingressId\\\":\\\"consultaexp-ns-desa:consultaexp-api-ingress-desa\\\",\\\"path\\\":\\\"/consulta/expedienteacademico\\\",\\\"port\\\":80,\\\"protocol\\\":\\\"HTTP\\\",\\\"serviceId\\\":\\\"consultaexp-ns-desa:consultaexp-api-service-desa\\\"}]\"},\"host\":\"155.54.228.21\",\"container_name\":\"api\",\"docker_id\":\"ebf5e81608c2d6b3bd25f16c81b9931ac6810595086c6ea1e9fbf880cf74d5d2\",\"container_hash\":\"registry.um.es:443/mncs/consulta-expedientes-api@sha256:53d5dc41868a6dc36523c8c75d0ae9372b2c4d38729256ac0ce0d96348a7acd8\",\"container_image\":\"registry.um.es:443/mncs/consulta-expedientes-api:0.0.540570\"}}",
    "stream": "stdout",
    "@version": "1",
    "url": {
      "path": "/consultaexpedientes/rest/v1.0/private/titulaciones/XXXXXX"
    },
    "geoip": {
      "country_code3": "ES",
      "ip": "155.54.67.188",
      "timezone": "Europe/Madrid",
      "latitude": 37.987,
      "region_name": "Murcia",
      "country_name": "Spain",
      "location": {
        "lon": -1.13,
        "lat": 37.987
      },
      "country_code2": "ES",
      "city_name": "Murcia",
      "postal_code": "30001",
      "longitude": -1.13,
      "region_code": "MU",
      "continent_code": "EU"
    },
    "cluster": {
      "ip": "10.42.49.192"
    }
  },
  "fields": {
    "@timestamp": [
      "2021-06-08T15:51:53.000Z"
    ],
    "kubernetes.annotations.cattle.io/timestamp": [
      "2021-02-04T12:09:09.000Z"
    ],
    "time": [
      "2021-06-08T15:51:53.627Z"
    ]
  },
  "highlight": {
    "kubernetes.log.type.keyword": [
      "@kibana-highlighted-field@kube_acces_log@/kibana-highlighted-field@"
    ]
  },
  "sort": [
    1623167513000
  ]
}


Bloque de código
languagejson
titleEvento log4j2 - LAGAR
linenumberstrue
collapsetrue
{
  "_index": "k8s-consultaexp-ns-desa@2021.23",
  "_type": "_doc",
  "_id": "wBBS7HkBrJTgiCWTs8ib",
  "_version": 1,
  "_score": null,
  "_source": {
    "tags": [
      "_grokparsefailure",
      "_geoip_lookup_failure"
    ],
    "@version": "1",
    "time": "2021-06-08T15:51:53.335846939Z",
    "kubernetes": {
      "labels": {
        "author": "campusvirtual",
        "app": "api",
        "pod-template-hash": "5499587c9f"
      },
      "namespace_name": "consultaexp-ns-desa",
      "host": "155.54.228.21",
      "docker_id": "ebf5e81608c2d6b3bd25f16c81b9931ac6810595086c6ea1e9fbf880cf74d5d2",
      "pod_id": "48733f4e-9f95-40ae-a560-373154829bc8",
      "log": {
        "type": "kube_apli"
      },
      "container_name": "api",
      "annotations": {
        "cni.projectcalico.org/podIP": "10.42.148.90/32",
        "field.cattle.io/ports": "[[{\"containerPort\":8080,\"dnsName\":\"consultaexp-api-deployment-desa\",\"kind\":\"ClusterIP\",\"name\":\"8080tcp2\",\"protocol\":\"TCP\"}]]",
        "cattle.io/timestamp": "2021-02-04T12:09:09Z",
        "cni.projectcalico.org/podIPs": "10.42.148.90/32",
        "field.cattle.io/publicEndpoints": "[{\"addresses\":[\"155.54.228.21\",\"155.54.228.22\",\"155.54.228.23\"],\"hostname\":\"micampusdesa.um.es\",\"ingressId\":\"consultaexp-ns-desa:consultaexp-api-ingress-desa\",\"path\":\"/consulta/expedienteacademico\",\"port\":80,\"protocol\":\"HTTP\",\"serviceId\":\"consultaexp-ns-desa:consultaexp-api-service-desa\"}]"
      },
      "container_hash": "registry.um.es:443/mncs/consulta-expedientes-api@sha256:53d5dc41868a6dc36523c8c75d0ae9372b2c4d38729256ac0ce0d96348a7acd8",
      "container_image": "registry.um.es:443/mncs/consulta-expedientes-api:0.0.540570",
      "pod_name": "consultaexp-api-deployment-desa-5499587c9f-kx8gs"
    },
    "@timestamp": "2021-06-08T15:51:53.335Z",
    "log": "{\"line_number\":377,\"class\":\"es.um.atica.consultaexpedientesbackend.rest.RestExpedientes\",\"@version\":1,\"source_host\":\"consultaexp-api-deployment-desa-5499587c9f-kx8gs\",\"message\":\" ############################################### titulaciones: XXXXX\",\"thread_name\":\"http-nio-8080-exec-6\",\"_@timestamp\":\"2021-06-08T15:51:53.335+00:00\",\"level\":\"INFO\",\"file\":\"RestExpedientes.java\",\"method\":\"getTitulaciones\",\"logger_name\":\"es.um.atica.consultaexpedientesbackend.rest.RestExpedientes\"}\n",
    "log_processed": {
      "class": "es.um.atica.consultaexpedientesbackend.rest.RestExpedientes",
      "level": "INFO",
      "_@timestamp": "2021-06-08T15:51:53.335+00:00",
      "message": " ############################################### titulaciones: XXXXX",
      "file": "RestExpedientes.java",
      "method": "getTitulaciones",
      "@version": 1,
      "logger_name": "es.um.atica.consultaexpedientesbackend.rest.RestExpedientes",
      "thread_name": "http-nio-8080-exec-6",
      "line_number": 377,
      "source_host": "consultaexp-api-deployment-desa-5499587c9f-kx8gs"
    },
    "message": "{\"_@timestamp\":1623167513.335847,\"log\":\"{\\\"line_number\\\":377,\\\"class\\\":\\\"es.um.atica.consultaexpedientesbackend.rest.RestExpedientes\\\",\\\"@version\\\":1,\\\"source_host\\\":\\\"consultaexp-api-deployment-desa-5499587c9f-kx8gs\\\",\\\"message\\\":\\\" ############################################### titulaciones: XXXXX\\\",\\\"thread_name\\\":\\\"http-nio-8080-exec-6\\\",\\\"_@timestamp\\\":\\\"2021-06-08T15:51:53.335+00:00\\\",\\\"level\\\":\\\"INFO\\\",\\\"file\\\":\\\"RestExpedientes.java\\\",\\\"method\\\":\\\"getTitulaciones\\\",\\\"logger_name\\\":\\\"es.um.atica.consultaexpedientesbackend.rest.RestExpedientes\\\"}\\n\",\"stream\":\"stdout\",\"time\":\"2021-06-08T15:51:53.335846939Z\",\"log_processed\":{\"line_number\":377,\"class\":\"es.um.atica.consultaexpedientesbackend.rest.RestExpedientes\",\"@version\":1,\"source_host\":\"consultaexp-api-deployment-desa-5499587c9f-kx8gs\",\"message\":\" ############################################### titulaciones: XXXXX\",\"thread_name\":\"http-nio-8080-exec-6\",\"_@timestamp\":\"2021-06-08T15:51:53.335+00:00\",\"level\":\"INFO\",\"file\":\"RestExpedientes.java\",\"method\":\"getTitulaciones\",\"logger_name\":\"es.um.atica.consultaexpedientesbackend.rest.RestExpedientes\"},\"kubernetes\":{\"pod_name\":\"consultaexp-api-deployment-desa-5499587c9f-kx8gs\",\"namespace_name\":\"consultaexp-ns-desa\",\"pod_id\":\"48733f4e-9f95-40ae-a560-373154829bc8\",\"labels\":{\"app\":\"api\",\"author\":\"campusvirtual\",\"pod-template-hash\":\"5499587c9f\"},\"annotations\":{\"cattle.io/timestamp\":\"2021-02-04T12:09:09Z\",\"cni.projectcalico.org/podIP\":\"10.42.148.90/32\",\"cni.projectcalico.org/podIPs\":\"10.42.148.90/32\",\"field.cattle.io/ports\":\"[[{\\\"containerPort\\\":8080,\\\"dnsName\\\":\\\"consultaexp-api-deployment-desa\\\",\\\"kind\\\":\\\"ClusterIP\\\",\\\"name\\\":\\\"8080tcp2\\\",\\\"protocol\\\":\\\"TCP\\\"}]]\",\"field.cattle.io/publicEndpoints\":\"[{\\\"addresses\\\":[\\\"155.54.228.21\\\",\\\"155.54.228.22\\\",\\\"155.54.228.23\\\"],\\\"hostname\\\":\\\"micampusdesa.um.es\\\",\\\"ingressId\\\":\\\"consultaexp-ns-desa:consultaexp-api-ingress-desa\\\",\\\"path\\\":\\\"/consulta/expedienteacademico\\\",\\\"port\\\":80,\\\"protocol\\\":\\\"HTTP\\\",\\\"serviceId\\\":\\\"consultaexp-ns-desa:consultaexp-api-service-desa\\\"}]\"},\"host\":\"155.54.228.21\",\"container_name\":\"api\",\"docker_id\":\"ebf5e81608c2d6b3bd25f16c81b9931ac6810595086c6ea1e9fbf880cf74d5d2\",\"container_hash\":\"registry.um.es:443/mncs/consulta-expedientes-api@sha256:53d5dc41868a6dc36523c8c75d0ae9372b2c4d38729256ac0ce0d96348a7acd8\",\"container_image\":\"registry.um.es:443/mncs/consulta-expedientes-api:0.0.540570\"}}",
    "stream": "stdout"
  },
  "fields": {
    "@timestamp": [
      "2021-06-08T15:51:53.335Z"
    ],
    "kubernetes.annotations.cattle.io/timestamp": [
      "2021-02-04T12:09:09.000Z"
    ],
    "time": [
      "2021-06-08T15:51:53.335Z"
    ],
    "log_processed._@timestamp": [
      "2021-06-08T15:51:53.335Z"
    ]
  },
  "highlight": {
    "kubernetes.log.type": [
      "@kibana-highlighted-field@kube_apli@/kibana-highlighted-field@"
    ],
    "kubernetes.container_name.keyword": [
      "@kibana-highlighted-field@api@/kibana-highlighted-field@"
    ]
  },
  "sort": [
    1623167513335
  ]
}


CAMPOTIPO CAMPOTIPO LOGDESCRIPCIÓN

@timestamp

Metadato ElasticTodos
(estrella) Fecha
(estrella verde) Fecha y hora del evento por el que se realizarán todos los filtros de fecha y ordenaciones.
@versionMetadato ElasticTodos(menos) Ignorar.

_id

Metadato ElasticTodos(menos) Id único del evento en elastic. Ignorar.
_indexMetadato ElasticTodos(menos) Índice concreto en el que se encuentra el evento. Ignorar.
_scoreMetadato ElasticTodos(menos) Ignorar.
_typeMetadato ElasticTodos(menos) Ignorar.
kubernetes.annotations.cattle.io/timestampMetadato KubernetesTodos(menos) Información sobre fecha de creación del servicio. Ignorar.
kubernetes.annotations.cni.projectcalico.org/podIPMetadato KubernetesTodos(menos) Información de red sobre los contenedores. Ignorar.
kubernetes.annotations.cni.projectcalico.org/podIPsMetadato KubernetesTodos(menos) Información de red sobre los contenedores. Ignorar.
kubernetes.annotations.field.cattle.io/portsMetadato KubernetesTodos(menos) Información de red sobre los contenedores. Ignorar.
kubernetes.annotations.field.cattle.io/publicEndpointsMetadato KubernetesTodos(menos) Información de red sobre los contenedores. Ignorar.
kubernetes.container_hashMetadato KubernetesTodos(bombilla) Hash de la imagen. Útil para identificar la imagen corriendo en el pod.
kubernetes.container_imageMetadato KubernetesTodos(bombilla) Nombre de la imagen. Útil para identificar la imagen corriendo en el pod.
kubernetes.container_nameMetadato KubernetesTodos
(estrella)
(estrella verde) Nombre del contenedor/servicio.  (api o ui).
kubernetes.docker_idMetadato KubernetesTodos(menos) Información sobre el pod. Ignorar.
kubernetes.hostMetadato KubernetesTodos(bombilla) IP del servicio.
kubernetes.labels.appMetadato KubernetesTodos(bombilla) Etiqueta app configurada por Sistemas.
kubernetes.labels.authorMetadato KubernetesTodos(bombilla)Etiqueta author configurada por Sistemas.
kubernetes.labels.pod-template-hashMetadato KubernetesTodos(bombilla)Etiqueta pod-template-hash configurada por Sistemas.
kubernetes.log.typeMetadato KubernetesTodos
(estrella)
(estrella verde) Tipo de Log según origen (kube_acces_log o kube_apli).
kubernetes.namespace_nameMetadato KubernetesTodos(bombilla) Nombre del namespace kubernetes ([aplicación]-ns-[entorno]).
kubernetes.pod_idMetadato KubernetesTodos(bombilla) Id del pod.
kubernetes.pod_nameMetadato KubernetesTodos(bombilla) Nombre del pod.
logCampo GeneralTodos
(estrella)

(estrella verde) Log real completo.

Equivalente


     Equivalente a una línea en un fichero de log application/access FundeWeb.

Se


     Se extrae del campo message.

Encapsula log_processed.fileLog4j2API(estrella)


     Encapsula todos los campos log_processed.XX y http.XX.

log_processed.@versionLog4j2API

(menos) Campo versión que añade log4j2. Ignorar. 
     Extraído del campo log para eventos tipo log4j2.

log_processed._@timestampLog4j2API(bombilla) Timestamp de log4j2. Fecha y hora en la que se pinta el log en el backend.
     Extraído del campo logpara eventos tipo log4j2.
log_processed.classLog4j2API
(estrella)
(estrella verde) Clase donde se ha colocado el log. Incluye paquete.
     Extraído del campo logpara eventos tipo log4j2.
log_processed.
level
fileLog4j2API
(estrella)
(estrella verde) Fichero .java donde se ha colocado el log.
     Extraído del campo logpara eventos tipo log4j2.
log
log
_processed.
line_number
levelLog4j2API
(estrella)
(estrella verde) NIVEL DE TRAZA (INFO, DEBUG, WARN, ERROR...).
     Extraído del campo logpara eventos tipo log4j2.
log_processed.
logger
line_
name
numberLog4j2API
(estrella verde) Línea de de la clase java donde se ha colocado el log.
     Extraído del campo logpara eventos tipo log4j2.
(bombilla)
log_processed.
message
logger_nameLog4j2API
(estrella)
(menos) Nombre de logger log4j2. Ignorar.
     Extraído del campo logpara eventos tipo log4j2.
log_processed.
method(bombilla)
messageLog4j2API
(estrella)log_processed.source_hostLog4j2API
(estrella verde) Mensaje real que se está loggeando en el backend, es decir, la cadena que se pasa como 
     parámetro al log.[level](message).
     Extraído del campo logpara eventos tipo log4j2.
log_processed.
thread_name
method
Log4j2 API(bombilla)
Log4j2API(estrella verde) Método de la clase java donde se ha colocado el log.
     Extraído del campo logpara eventos tipo log4j2.
log_processed.source_hostLog4j2API(bombilla) IP del servicio. Coincide con el campo kubernetes.host.
     Extraído del campo logpara eventos tipo log4j2.
log_processed.thread_nameLog4j2 API(bombilla) Nombre del hilo de ejecución java.
     Extraído del campo logpara eventos tipo log4j2.
messageCampo GeneralTodos

(menos)  Log completo enviado por kubernetes (fluentbit).
      Composición del campo log y de todos los metadatos Kubernetes.
      No merece la pena intentar leerlo salvo error en el parseo y construcción del resto de
      campos. 

messageCampo GeneralTodos(estrella)source.ipAcesslogAPI+UI(estrella)

cluster.ipAcesslogAPI+UI(bombilla)
 IP del Ingress frontal a todas las aplicaciones (pasarela con la red externa).
source.ipAcesslogAPI+UI(estrella verde) IP real del cliente que genera la petición a nuestra aplicación.
     Extraído del campo log para eventos tipo accesslog.
geoip.city_nameAcesslogAPI+UI(bombilla)
geoip.continent_codeAcesslogAPI+UI(bombilla)
geoip.country_code2AcesslogAPI+UI(bombilla)
geoip.country_code3AcesslogAPI+UI(bombilla)
geoip.country_nameAcesslogAPI+UI(bombilla)
geoip.ipAcesslogAPI+UI(bombilla)
geoip.latitudeAcesslogAPI+UI(bombilla)
geoip.locationAcesslogAPI+UI(bombilla)
geoip.longitudeAcesslogAPI+UI(bombilla)
geoip.postal_codeAcesslogAPI+UI(bombilla)
geoip.region_codeAcesslogAPI+UI(bombilla)
geoip.region_nameAcesslogAPI+UI(bombilla)
geoip.timezoneAcesslogAPI+UI(bombilla)
http.access.timeAcesslogAPI+UI(bombilla) Fecha y hora de la petición.
     Extraído del campo log para eventos tipo accesslog.
http.request.methodAcesslogAPI+UI
(bombilla)
(estrella verde) Método HTTP de la petición (GET, POST, PUT...)
     Extraído del campo log para eventos tipo accesslog.
http.
access
request.
time
refererAcesslogAPI+UI
(bombilla)
(estrella verde) Cabecera referer. Página origen desde donde se generó la petición HTTP.
     Extraído del campo log para eventos tipo accesslog.
http.
request
response.body.
method
bytesAcesslogAPI+UI
(estrella)

(estrella verde) Tamaño en bytes de la respuesta HTTP.
     Extraído del campo log para eventos tipo accesslog.

http.
request
response.body.
referer
delayAcesslogAPI
+UI(estrella)

(estrella verde) Tiempo de procesado de la petición HTTP.
     Extraído del campo log para eventos tipo accesslog.

http.response.
body.bytes
status_codeAcesslogAPI+UI
(estrella)
(estrella verde) Código HTTP de la respuesta (200, 400, 500...)
     Extraído del campo log para eventos tipo accesslog.
http.user_agent.original
http.response.body.delayAcesslogAPI(estrella)http.response.status_codehttp.user_agent.originalAcesslogAPI+UI(estrella)
AcesslogAPI+UI
(estrella)
(estrella verde) User agent. Información sobre el cliente que hizo la petición HTTP
    (Familia de navegador, información del sistema, plataforma, extensiones...)
     Extraído del campo log para eventos tipo accesslog.
http.versionAcesslogAPI+UI
(estrella)
(bombilla) Versión HTTP.
streamMetadato ElasticTodos(menos)  Ignorar.
tagsMetadato ElasticTodos
(bombilla)  Etiquetas del evento. Revisar en caso de que los campos no estén bien formados.
      Proporciona información sobre el parseo en Logstash.
(menos) 
timeMetadato ElasticTodos(menos)  Otro campo más de fecha/hora. Ignorar.
log_processed.mdc.[CAMPO_CUSTOM]Log4j2API

(estrella verde) Campo/s automático/s generado/s desde el backend.
     Extraído del campo log.
     Ver apartado 3 de esta página.

(estrella)

2. Objetos predeterminados en LAGAR

  • consultas desa
  • consultas test
  • consultas prod
  • panel k8s
  • panel backend
  • panel access

3. Añadir campos automáticamente



Info



Artículos Relacionados



Contenido por etiqueta
showLabelsfalse
max5
spaces~ramon.ginel@ticarum.es
showSpacefalse
sortmodified
reversetrue
typepage
cqllabel in ("lagar","fundewebjs","logs") and type = "page" and space = "~ramon.ginel@ticarum.es"
labelsfundewebjs lagar


Propiedades de página
hiddentrue


Incidencias similares





















TIPOS DE LOGS EN LAGAR SEGÚN ORIGEN