Conectar a Goxe
Ahora que has configurado goxe, el siguiente paso es conectar tus aplicaciones o servicios para que envíen sus logs a goxe.
Goxe escucha por defecto en el puerto UDP 1729, pero puedes cambiar esto en el archivo de configuración config.json si es necesario, asegúrate de que las aplicaciones que envían logs estén configuradas para usar el mismo puerto.
Configuración de aplicaciones para enviar logs a Goxe
Sección titulada «Configuración de aplicaciones para enviar logs a Goxe»A continuación, se presentan ejemplos de cómo configurar algunas aplicaciones comunes para enviar sus logs a goxe.
Syslog (Linux)
Sección titulada «Syslog (Linux)»Si estás utilizando syslog en un sistema Linux, puedes agregar la siguiente línea a tu archivo de configuración de syslog (por ejemplo, /etc/rsyslog.conf):
*.* @localhost:1729;RSYSLOG_SyslogProtocol23FormatDespués de realizar este cambio, reinicia el servicio de syslog para que los cambios surtan efecto:
sudo systemctl restart rsyslogWindows Event Log
Sección titulada «Windows Event Log»En Windows, puedes utilizar la herramienta nxlog para enviar eventos del registro de eventos a goxe. Aquí hay un ejemplo de configuración para nxlog:
<Input in> Module im_msvistalog</Input><Output out> Module om_udp Host localhost Port 1729</Output><Route 1> Path in => out</Route>Después de configurar nxlog, reinicia el servicio para aplicar los cambios:
net stop nxlognet start nxlogSyslog (MacOS)
Sección titulada «Syslog (MacOS)»En MacOS es el mismo archivo de configuración de syslog que en Linux, pero el servicio se maneja con launchctl. Agrega la siguiente línea a tu archivo de configuración de syslog (por ejemplo, /etc/syslog.conf):
*.* @localhost:1729Luego, reinicia el servicio de syslog para aplicar los cambios:
sudo launchctl stop com.apple.syslogdsudo launchctl start com.apple.syslogdPara enviar logs de Nginx a goxe, puedes utilizar el módulo syslog. Agrega la siguiente línea a tu archivo de configuración de Nginx (por ejemplo, /etc/nginx/nginx.conf):
error_log syslog:server=localhost:1729;access_log syslog:server=localhost:1729 combined;Luego, reinicia Nginx para aplicar los cambios:
sudo systemctl restart nginxAplicaciones Personalizadas
Sección titulada «Aplicaciones Personalizadas»Si estás desarrollando una aplicación personalizada, puedes enviar logs a goxe utilizando UDP.
Aquí hay un ejemplo en Python:
import socket
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)log_message = "Este es un log de prueba"sock.sendto(log_message.encode(), ("localhost", 1729))Aquí hay un ejemplo en Node.js:
const dgram = require('dgram');const message = Buffer.from('Este es un log de prueba');const client = dgram.createSocket('udp4');client.send(message, 1729, 'localhost', (err) => { client.close();});Aquí hay un ejemplo en Go:
package main
import ( "net" "log")
func main() { conn, err := net.Dial("udp", "localhost:1729") if err != nil { log.Fatal(err) } defer conn.Close() logMessage := "Este es un log de prueba" _, err = conn.Write([]byte(logMessage)) if err != nil { log.Fatal(err) }}Al final independiente mente de la aplicación o servicio que hayas utilizado goxe procesará los logs que reciba y se comportará según la configuración que hayas definido en tu config.json.
Goxe no te avisa al momento de recibir un log, pero puedes verificar que los logs están siendo recibidos, ya que es una aplicacion silenciosa, al momento de estar activo y haber configurado bien el envio de logs a goxe, goxe estara funcionando correctamente y procesando los logs que reciba.