Port: 5001
URL: http://127.0.0.1:5001
API: http://127.0.0.1:5001/api/log
Splunk-like centralized logging for the ecosystem. Collects and displays logs from all ecosystem applications.
- Centralized Log Collection - Receive logs from any application via HTTP API
- Search & Filter - Query logs by app, level, time range, and keywords
- Dashboard View - Real-time log overview with statistics
- JSON API - Programmatic access to all logs
- Auto-Registration - Apps automatically registered when they send logs
cd ~/.openclaw/workspace/apps/logging-app
pip install -r requirements.txt
python3 app.pyfrom app import log_to_centralized
log_to_centralized(
app_name="My App",
app_port=5002,
level="ERROR",
message="Something failed",
source="database.py",
extra_data={"query": "SELECT * FROM users", "error": "Connection timeout"}
)curl -X POST http://127.0.0.1:5001/api/log \
-H "Content-Type: application/json" \
-d '{
"app_name": "My App",
"app_port": 5002,
"level": "ERROR",
"message": "Database connection failed",
"source": "db.py",
"extra_data": {"host": "localhost", "port": 5432}
}'DEBUG- Detailed info for debuggingINFO- General eventsWARNING- Potential issuesERROR- Errors and failuresCRITICAL- Critical failures
| Endpoint | Method | Description |
|---|---|---|
/ |
GET | Dashboard HTML |
/view/<id> |
GET | Single log entry |
/api/log |
POST | Submit a log entry |
/api/logs |
GET | Query logs with filters |
/api/apps |
GET | List registered apps |
/clear |
POST | Clear all logs |
app- Filter by application namelevel- Filter by log levelsearch- Search in message/sourcestart- Start timestamp (ISO format)end- End timestamp (ISO format)limit- Max results (default: 100)
When building new apps:
- Import
log_to_centralizedfromlogging-app/app.py - Call it for errors, warnings, and important events
- Use appropriate log levels
Edit config.py to customize:
- APP_NAME
- PORT
- LOG_LEVELS
- Theme colors
- Query limits