Seq Forwarder es un recopilador de registros del lado del cliente que recibe eventos a través de su API HTTP local y los conserva en su propio almacenamiento interno hasta que se pueda acceder a un servidor Seq remoto.
Seq Forwarder escucha en el puerto 15341
de forma predeterminada. La API de ingesta HTTP es idéntica a la de Seq, por lo que las bibliotecas cliente estándar como Serilog.Sinks.Seq pueden escribir en ella directamente.
Log.Logger = new LoggerConfiguration() .WriteTo.Seq("http://localhost:15341").CreateLogger();Log.Information("¡Hola, Seq Forwarder!");
Las aplicaciones cliente pueden especificar una clave API al iniciar sesión en Seq Forwarder. En este caso, la clave API proporcionada por el cliente se reenviará al servidor Seq de destino.
Alternativamente, Seq Forwarder se puede configurar con una clave API y la usará para iniciar sesión en Seq cuando las aplicaciones cliente no especifiquen una.
Primero, descargue el paquete de lanzamiento para su plataforma y extráigalo a una ubicación adecuada.
Las instrucciones siguientes utilizan la línea de comandos seqfwd
. Para obtener información sobre los comandos disponibles, pruebe seqfwd help
.
Para configurar Seq Forwarder como un servicio de Windows, desde un mensaje administrativo de PowerShell en el directorio de Seq Forwarder, configure la URL del servidor Seq de destino y una clave API opcional:
./seqfwd config -k salida.serverUrl --value="http://seq.example.com/"./seqfwd config -k salida.apiKey --value="1a2b3c4d5e6f"./seqfwd config -k almacenamiento.bufferSizeBytes -v 1073741824./seqfwd instalar ./seqfwd inicio
El límite de tamaño de búfer predeterminado es 64 MB. En el ejemplo, esto se incrementa a 1 GB.
Para actualizar, detenga el servicio, sobrescriba el paquete de versión del reenviador y reinicie el servicio.
En Windows, Seq Forwarder utilizará DPAPI con ámbito de máquina para cifrar la clave API predeterminada y cualquier clave API proporcionada por los clientes.
En Linux, necesitarás liblmdb
:
apt install liblmdb-dev
Para ejecutar Seq Forwarder, configure la URL del servidor Seq de destino y, opcionalmente, una clave API:
./seqfwd config -k salida.serverUrl --value="http://seq.example.com/"./seqfwd config -k salida.apiKey --value="1a2b3c4d5e6f"./seqfwd config -k almacenamiento.bufferSizeBytes -v 1073741824 ./seqfwd ejecutar
Tenga en cuenta que en macOS y Linux, la clave API de salida y cualquier clave API proporcionada por los clientes se almacenarán en texto sin formato.
El límite de tamaño de búfer predeterminado es 64 MB. En el ejemplo, esto se incrementa a 1 GB.
Seq Forwarder es una aplicación .NET Core que se puede crear utilizando el SDK de .NET Core en Windows, macOS y Linux.
Para depurar, F5
funcionará, pero en Windows deberá ejecutar el comando install
(ver a continuación) para crear una reserva de espacio de nombres HTTP o ejecutarlo como administrador.
De forma predeterminada, los registros del "reenviador" se almacenarán en %PROGRAMDATA%SeqLogs
. Si el servidor Seq de destino no está disponible, se almacenará una excepción en estos archivos de registro.
Si necesita inspeccionar la configuración actual, puede encontrarla en: %PROGRAMDATA%SeqForwarderSeqForwarder.json
> ./seqfwd help Usage: seqfwd <command> [<args>] Available commands are: bind-ssl Bind an installed SSL certificate to an HTTPS port served by Seq Forwarder config View and set fields in the SeqForwarder.json file; run with no arguments to list all fields dump Print the complete log buffer contents as JSON help Show information about available commands install Install the Seq Forwarder as a Windows service restart Restart the Windows service run Run the server interactively start Start the Windows service status Show the status of the Seq Forwarder service stop Stop the Windows service truncate Clear the log buffer contents uninstall Uninstall the Windows service version Print the current executable version
Tenga en cuenta que los comandos HTTP y relacionados con el servicio de Windows ( bind-ssl
, install
, restart
, start
, status
, stop
y uninstall
) solo están disponibles en esa plataforma.
El comando seqfwd config
lee y escribe SeqForwarder.json :
{ "diagnostics": {"internalLogPath": "C:ProgramDataSeqLogs","internalLoggingLevel": "Información" }, "salida": {"serverUrl": "http://localhost:5341","eventBodyLimitBytes": 262144,"rawPayloadLimitBytes": 10485760,"apiKey": nulo }, "almacenamiento": {"bufferSizeBytes": 67108864 }, "api": {"listenUri": "http://localhost:15341" } }
En Windows, este archivo se encuentra en C:ProgramDataSeqForwarder
.