logging

Create structured JSONL loggers for SideQuest plugins with correlation IDs and rotation.

2|Updated Feb 27, 2026
One-click install
npx skills add https://github.com/nathanvale/side-quest-marketplace --skill logging-nathanvale
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: logging
Source: https://github.com/nathanvale/side-quest-marketplace/tree/main/plugins/plugin-template/skills/logging
Command: npx skills add https://github.com/nathanvale/side-quest-marketplace --skill logging-nathanvale

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires @sidequest/core.

What problem does it solve?

This Skill helps plugin developers instrument SideQuest plugins with structured logs, enabling faster debugging, consistent observability, and easier collaboration across teams.

Core Features & Use Cases

  • Structured JSONL logs: Centralized, machine-readable entries across subsystems for easier analysis.
  • Correlation IDs: Trace a single operation through logs to diagnose issues end-to-end.
  • Guided setup and best practices: Quick-start steps, log levels, and rotation to keep logs manageable.
  • Usage scenarios: Debug abnormal behavior, performance bottlenecks, and security audits.

Quick Start

  • Add @sidequest/core to your plugin's dependencies.
  • Create a logger module using createPluginLogger() to define subsystems.
  • Initialize the logger at plugin startup with initLogger() and use subsystem loggers across code paths.
  • Consider log rotation and appropriate log level configuration for production.

Frequently Asked Questions about logging

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add structured logging to my SideQuest plugin?

Structured logging captures plugin activity in machine-readable JSONL format. Initialize a logger with `createPluginLogger()` at startup, define subsystem loggers for different code paths, and logs automatically write to ~/.<plugin-name>/logs with correlation IDs for tracing operations end-to-end.

What is JSONL logging and why use it for plugins?

JSONL (JSON Lines) logging stores each log entry as a single JSON object per line, making logs machine-readable and easier to parse, filter, and analyze programmatically compared to unstructured text logs.

How do correlation IDs help debug SideQuest plugins?

Correlation IDs are unique identifiers attached to each operation that propagate through all related log entries. This lets you trace a single request or workflow across multiple subsystems and log files to pinpoint where issues occur.

Can I rotate and manage log file size in SideQuest plugins?

Yes. This Skill supports log rotation and retention settings configured during logger initialization, preventing logs from consuming excessive disk space while maintaining recent entries for debugging.

Do I need @sidequest/core to use structured logging in my plugin?

Yes. @sidequest/core is a required dependency that provides `createPluginLogger()` and `initLogger()` functions to set up structured logging with subsystem support and correlation ID propagation.

What log levels should I use for production plugins?

Log levels control verbosity and performance impact. Production plugins typically use INFO or WARN to capture important events without excessive overhead, with DEBUG reserved for development and troubleshooting workflows.