Skip to content

Commit 8a95f95

Browse files
committed
docs
1 parent 60868c4 commit 8a95f95

File tree

1 file changed

+23
-3
lines changed

1 file changed

+23
-3
lines changed

README.md

Lines changed: 23 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -140,12 +140,32 @@ java \
140140

141141
## Available Processors
142142

143+
JCT currently ships with three output processors.
144+
143145
- `de.marcelsauer.profiler.processor.file.AsyncFileWritingStackProcessor`
144-
- Example config: `src/test/resources/integration/test-config-asyncfile.yaml`
146+
- Writes one JSON event per line into a daily log file (`jct_yyyy_dd_MM.log`) in `processor.stackFolderName`
147+
- Best when you want the simplest setup, local debugging, or offline analysis
148+
- Trade-off: local disk I/O and file handling are on you
149+
- Sample configs: `doc/config-sample-file.yaml`, `src/test/resources/integration/test-config-asyncfile.yaml`
150+
145151
- `de.marcelsauer.profiler.processor.udp.AsyncUdpStackProcessor`
146-
- Example config: `src/test/resources/integration/test-config-asyncudp.yaml`
152+
- Sends each JSON event as a UDP datagram to `processor.udpHost:processor.udpPort`
153+
- Best for low overhead streaming to Logstash when occasional loss is acceptable
154+
- Trade-off: no delivery guarantee; oversized/failed sends are discarded
155+
- Sample configs: `doc/config-sample-helloworld-udp.yaml`, `src/test/resources/integration/test-config-asyncudp.yaml`
156+
147157
- `de.marcelsauer.profiler.processor.tcp.AsyncTcpStackProcessor`
148-
- Example config: `src/test/resources/integration/test-config-asynctcp.yaml`
158+
- Sends one JSON event per line over TCP to `processor.tcpHost:processor.tcpPort`
159+
- Reconnects automatically using `tcpConnectTimeoutMillis` and `tcpReconnectDelayMillis`
160+
- Best when you want stronger delivery behavior than UDP for central ingestion
161+
- Trade-off: network/backpressure issues can still cause dropped events after failed writes
162+
- Sample configs: `doc/config-sample-helloworld-tcp.yaml`, `src/test/resources/integration/test-config-asynctcp.yaml`
163+
164+
Quick chooser:
165+
166+
- Pick `file` if you want easiest first success and local evidence fast
167+
- Pick `udp` if you optimize for throughput and can tolerate some loss
168+
- Pick `tcp` if you want better transport reliability for ELK pipelines
149169

150170
## Message Format
151171

0 commit comments

Comments
 (0)