You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The `seqcli forwarder` family of commands provide simple, durable ingestion buffering for occasionally-connected and
1655
+
intermittently-disconnected systems. The forwarder implements the Seq ingestion API, so applications that write
1656
+
directly to Seq can instead write to the forwarder, which will persist data locally until it can be sent to the
1657
+
destination Seq server.
1658
+
1659
+
> [!NOTE]
1660
+
>
1661
+
> Forwarder is designed for local use in isolated environments — for example, locally on a firewalled machine, or
1662
+
> within a secured container network.
1663
+
>
1664
+
> The forwarder HTTP API does not authenticate incoming requests. By default, only the ingestion endpoint is exposed,
1665
+
> but if you opt into additional APIs such as the ingestion log, ensure the API is not reachable externally. Even in the
1666
+
> default configuration, be aware that clients may trigger disk space exhaustion and other issues by sending
1667
+
> excessive or maliciously-crafted ingestion traffic.
1668
+
1669
+
### Running the forwarder
1670
+
1671
+
To start a forwarder instance at the terminal, listening on port 5341 and forwarding to `seq.example.com`, run:
1672
+
1673
+
```shell
1674
+
seqcli forwarder run --pre --listen http://127.0.0.1:5341 -s https://seq.example.com
1675
+
```
1676
+
1677
+
> While the `forwarder` command group is in preview, all `forwarder` commands require the `--pre` switch; you'll
1678
+
> also need to supply `--pre` when requesting help, e.g. `seqcli help forwarder run --pre`.
1679
+
1680
+
You can test your forwarder using the `seqcli log` command:
1681
+
1682
+
```shell
1683
+
seqcli log -m Test -s http://127.0.0.1:5341
1684
+
```
1685
+
1686
+
If forwarding is successful, the event will appear in the target Seq instance within a few seconds. If it isn't,
1687
+
and `seqcli log` didn't report an error, run through these troubleshooting steps:
1688
+
1689
+
1. Read the output of the `seqcli forwarder run` command: are the paths and URLs in there the ones you expect?
1690
+
2. Check the destination Seq server's ingestion log; if the payload is being rejected by Seq, its likely you need to configure an API key for the forwarder's outbound connections, or API key forwarding (see below).
1691
+
3. Check the forwarder's log file; this will be in the `SeqCli/Logs` subdirectory of the forwarder's storage path, which will be your user's home directory unless you overrode it with `--storage` or `SEQCLI_STORAGE_PATH`.
1692
+
4. Enable the forwarder's ingestion log temporarily, ensuring this isn't accessible to untrusted callers.
1693
+
1694
+
### The forwarder's ingestion log
1695
+
1696
+
The ingestion log records ingestion issues in a short in-memory buffer, so repetitive ingestion issues don't chew up
1697
+
disk space. The ingestion log may contain fragments of event data so it's not enabled by default; you can turn it on
1698
+
with:
1699
+
1700
+
```shell
1701
+
SEQCLI_FORWARDER_DIAGNOSTICS_EXPOSEINGESTIONLOG=True seqcli forwarder run <other args>
1702
+
```
1703
+
1704
+
The log can be retrieved by pointing `seqcli` at the forwarder:
0 commit comments