truthound realtime monitor
Monitor streaming validation metrics continuously.
Synopsis
truthound realtime monitor <source> [ OPTIONS]
Arguments
Argument
Required
Description
source
Yes
Streaming source (mock, kafka:topic, kinesis:stream)
Options
Option
Short
Default
Description
--interval
-i
5
Monitoring interval in seconds
--duration
-d
60
Monitoring duration in seconds (0=unlimited)
Description
The realtime monitor command provides continuous metric monitoring:
Connects to the streaming source
Collects validation metrics at intervals
Displays real-time statistics
Tracks trends over time
Supported Sources
Source
Format
Description
Dependency
Mock
mock
Test mock data source
Built-in
Kafka
kafka:topic_name
Apache Kafka topic
aiokafka
Kinesis
kinesis:stream_name
AWS Kinesis stream
aiobotocore
Examples
Basic Monitoring
truthound realtime monitor mock
Output:
Realtime Monitoring
===================
Source: mock
Interval: 5s
Duration: 60s
Time Records/s Issues/s Pass Rate Lag
─────────────────────────────────────────────────────────────
00:00:05 1,234 12 99.03% 0
00:00:10 1,456 8 99.45% 0
00:00:15 1,389 15 98.92% 0
00:00:20 1,502 6 99.60% 0
...
Summary (60s)
─────────────────────────────────────────────────────────────
Total Records: 84,234
Total Issues: 523
Average Pass Rate: 99.38%
Peak Throughput: 1,567 records/s
─────────────────────────────────────────────────────────────
Custom Interval
# Monitor every 10 seconds
truthound realtime monitor mock --interval 10
# Monitor every 2 seconds for higher resolution
truthound realtime monitor mock --interval 2
Custom Duration
# Monitor for 5 minutes
truthound realtime monitor mock --duration 300
# Monitor for 1 hour
truthound realtime monitor mock --duration 3600
# Monitor indefinitely (Ctrl+C to stop)
truthound realtime monitor mock --duration 0
Kafka Topic Monitoring
# Basic Kafka monitoring
truthound realtime monitor kafka:my_topic
# Custom interval and duration
truthound realtime monitor kafka:orders --interval 10 --duration 300
Output with Kafka:
Realtime Monitoring
===================
Source: kafka:orders
Interval: 10s
Duration: 300s
Time Records/s Issues/s Pass Rate Lag Partitions
──────────────────────────────────────────────────────────────────────────
00:00:10 2,456 24 99.02% 1,234 3/3
00:00:20 2,789 18 99.35% 987 3/3
00:00:30 2,634 31 98.82% 1,567 3/3
...
Kinesis Stream Monitoring
# Basic Kinesis monitoring
truthound realtime monitor kinesis:my_stream
# Extended monitoring
truthound realtime monitor kinesis:events --interval 5 --duration 600
Metrics Displayed
Metric
Description
Records/s
Records processed per second
Issues/s
Validation issues per second
Pass Rate
Percentage of records passing validation
Lag
Consumer lag (Kafka/Kinesis only)
Partitions
Active partitions (Kafka only)
Shards
Active shards (Kinesis only)
Interval Guidelines
Interval
Use Case
Overhead
1-2s
High-resolution debugging
Higher
5-10s
Normal monitoring
Medium
30-60s
Long-term trending
Lower
Recommendations:
- Debugging : 1-2 second intervals
- Normal operations : 5-10 second intervals
- Long-term monitoring : 30-60 second intervals
Use Cases
1. Development Debugging
# High-resolution monitoring for debugging
truthound realtime monitor mock --interval 2 --duration 60
2. Production Monitoring
# Standard production monitoring
truthound realtime monitor kafka:orders --interval 10 --duration 0
# Monitor during load test
truthound realtime monitor kafka:test_topic --interval 5 --duration 300
4. Alerting Integration
#!/bin/bash
# monitor_with_alerts.sh
truthound realtime monitor kafka:orders --interval 10 --duration 0 | while read line; do
pass_rate = $( echo " $line " | awk '{print $4}' | tr -d '%' )
if [ ! -z " $pass_rate " ] && [ " $pass_rate " -lt 95 ] ; then
echo "ALERT: Pass rate dropped to ${ pass_rate } %"
# Send alert notification
fi
done
5. CI/CD Health Check
# GitHub Actions
- name : Monitor Streaming Health
run : |
timeout 60 truthound realtime monitor kafka:test_topic \
--interval 5 \
--duration 30 || true
Display Modes
Console Mode (Default)
Real-time updating display with colors and formatting.
JSON Output (Future)
# JSON output for programmatic parsing (planned)
truthound realtime monitor mock --format json
Keyboard Shortcuts
Key
Action
Ctrl+C
Stop monitoring
Exit Codes
Code
Condition
0
Monitoring completed or stopped gracefully
1
Monitoring error
2
Invalid arguments or connection error
See Also