DSL Query Language
Powerful query language for searching and filtering log entries.
Basic Syntax
Simple Equality
"level = 'error'"Multiple Conditions
"level = 'error' AND service = 'api'"OR Logic
"level IN ('error', 'warn') OR service = 'worker'"Grouping
"(level = 'error' OR level = 'warn') AND service = 'api'"Operators
Comparison
level = 'error'
level != 'debug'
attrs.status > 500
attrs.duration < 1000Pattern Matching
msg LIKE '%payment%'
service ILIKE '%api%'
msg CONTAINS 'payment failed'Membership
level IN ('error', 'warn')
service NOT IN ('worker', 'cron')Building Queries Programmatically
import { buildQuery } from '@lightning-logs/sdk'
const query = buildQuery({
level: ['error', 'warn'],
service: ['api'],
text: 'payment',
operator: 'AND'
})
// Returns: "level IN ('error', 'warn') AND service = 'api' AND msg CONTAINS 'payment'"JSONB Fields
// Access nested JSONB fields
attrs.status = 500
attrs.user.email = 'user@example.com'
attrs.metadata.tags IN ('production', 'critical')
// Check if key exists
attrs.error EXISTS
// JSONB contains
attrs.tags @> '["error", "critical"]'