Utilice la característica del recopilador Logstash en Liberty para
recopilar el registro y otros sucesos de los servidores
Liberty y
enviarlos a un servidor Logstash remoto. Los
sucesos recopilados se pueden utilizar para el análisis y la resolución de problemas de registro.
Antes de empezar
La característica logstashCollector-1.0 se ha probado con los productos siguientes:
- Logstash V2.x, Elasticsearch V2.x, y Kibana V4.x
Logstash V5.3.x, Elasticsearch V5.3.x, y Kibana V5.3.x
Puede utilizar la característica logstashCollector-1.0 con un servidor Logstash que se ejecuta con cualquiera de los plug-ins de salida disponibles de Logstash. Sin embargo, muchos usuarios eligen utilizar Logstash con Elasticsearch y Kibana para proporcionar una consolidación de registro completa y un recurso de análisis. Si desea más información, consulte el sitio web de Elastic.
Procedimiento
- Configure Logstash siguiendo las instrucciones de Elastic.
- Cree o adquiera archivos de certificado y par de claves para SSL para Logstash.
El mandato de ejemplo siguiente para openSSL genera un par de certificado y clave. Personalice el número de días y las claves que son válidos, según sea necesario.
openssl req -x509 -newkey rsa:2048 -keyout logstash.key -out logstash.crt -days 365 -nodes
- Para usuarios de Logstash y Elasticsearch, descargue un archivo de configuración de Logstash y un archivo de plantilla de índice desde este repositorio.
- Descargue el archivo de configuración de Logstash, liberty_logstash.conf, y el archivo de plantilla de índice, liberty_logstash_template.json, para la versión de pila Elastic de acuerdo con el archivo léame.
- En el archivo liberty_logstash.conf, personalice las vías de acceso de lumberjack
ssl_certificate y ssl_key y el valor de Elasticsearch
hosts
(nombre_host_Elasticsearch:número_puerto).
- Para usuarios de Elasticsearch V2.x, de forma opcional, personalice los valores predeterminados _ttl para indicar el número de milisegundos para mantener los registros de cada tipo de suceso en el archivo liberty_logstash_template.json.
- Complete los pasos siguientes para cada servidor Liberty del cual desea recopilar sucesos.
- Adquiera o cree un almacén de claves para el servidor Liberty. Para crear un certificado
autofirmado, utilice el mandato siguiente. Personalice el nombre de servidor, contraseña y sujeto como sea necesario.
d:\wlp\bin\securityUtility createSSLCertificate --server=myServerName --password="Liberty" --subject=CN=myHostname,OU=defaultServer,O=ibm,C=us
- Importe el archivo logstash.crt del paso 2
al archivo trust.jks en el servidor. Personalice el wlp_install_dir y el nombre de servidor, según sea necesario. Cuando se le solicite una contraseña, utilice la contraseña de certificado del paso 4a.
d:\java\bin\keytool -import -noprompt -alias
logstash -file logstash.crt -keystore
wlp_install_dir\usr\servers\myServerName\resources\security\trust.jks
-storepass Liberty
- Ejecute el mandato siguiente para instalar la característica logstashcollector-1.0:
d:\wlp\bin\installUtility install logstashcollector-1.0
- Configure el recopilador Logstash en el archivo
server.xml en Liberty añadiendo
el contenido siguiente.
Personalice la lista de logstashCollector de orígenes, el nombre de host y el puerto, según sea necesario.
Puede cambiar el número máximo de caracteres que están permitidos para el campo del mensaje en un mensaje o un suceso de rastreo o para el seguimiento de la pila en un suceso FFDC.
El máximo predeterminado es 2048 caracteres. El ejemplo siguiente establece el parámetro maxFieldLength en 3000 caracteres en el elemento logstashCollector. Para un número ilimitado de caracteres, establezca maxFieldLength en 0 (cero) o -1.
Se puede limitar el número máximo de sucesos que se envían por cada tipo de suceso (message, trace, accessLog, ffdc, garbageCollection) por segundo. El número máximo predeterminado de sucesos es 0, lo que significa que no se aplica una regulación. Si maxEvents es mayor que 0, hay un límite en el número de sucesos que se envían por segundo. El valor maxEvents tiene que ser un entero comprendido entre 0 y 2147483647.
![[17.0.0.1 and later]](../ng_v17001plus.gif)
Asimismo, puede añadir etiquetas personalizadas para decorar sucesos que se envían del servidor. El ejemplo siguiente tiene dos elementos
tag en el elemento
logstashCollector.
Nota: Las etiquetas que se utilizan en Centro de administración no tienen relación con las etiquetas que se utilizan en logstashCollector/bluemixLogCollector.
<featureManager>
<feature>logstashCollector-1.0</feature>
</featureManager>
<keyStore id="defaultKeyStore" password="Liberty" />
<keyStore id="defaultTrustStore" location="trust.jks" password="Liberty" />
<ssl id="mySSLConfig" trustStoreRef="defaultTrustStore"
keyStoreRef="defaultKeyStore" />
<logstashCollector
source="message,trace,garbageCollection,ffdc,accessLog"
hostName="localhost"
port="5043"
sslRef="mySSLConfig"
maxEvents="10"
maxFieldLength="3000">
<tag>serverRackA5</tag>
<tag>billingAppTeam</tag>
</logstashCollector>
Los registros de rastreo y acceso son registros de alto volumen y necesitan más recursos de
red, CPU y almacenamiento para la recopilación.
- Habilite el registro de acceso HTTP y utilice el formato de registro '%h %u %t "%r" %s %b %D %{User-agent}i'.
- Inicie Elasticsearch, Logstash y Kibana. Consulte el sitio web de Elastic si desea instrucciones.
- Inicie el servidor Liberty y genere algunos sucesos.
- Abra Kibana en un navegador y cree un índice.
- Para Kibana 5, pulse , establezca Time-field name en datetime y, después, pulse Crear.
- Para Kibana 4, pulse , establezca Time-field name en datetime y, después, pulse Crear.
- Descargue un panel de control de ejemplo desde este repositorio.
- Importe el panel de control en Kibana.
- Para Kibana 5, pulse .
- Para Kibana 4, pulse .
- Consulte el panel de control.
- Para Kibana 5, pulse y, después, seleccione el panel de control.
- Para Kibana 4, pulse y, después, seleccione el panel de control.
Resultados
Ha configurado servidores
Liberty para
enviar sucesos al servidor Logstash y, ahora, puede ver los
sucesos en el panel de control Liberty
utilizando Kibana.