observability

Define structured logging, span management, and metric cardinality for functional projects.

Updated May 7, 2026
One-click install
npx skills add https://github.com/TK-Evans01/tk-harness --skill observability-tk-evans01
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: observability
Source: https://github.com/TK-Evans01/tk-harness/tree/main/plugins/tk-house-style/skills/observability
Command: npx skills add https://github.com/TK-Evans01/tk-harness --skill observability-tk-evans01

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve?

This Skill helps developers maintain observability in their codebases without introducing impurities into the functional core, ensuring that logging, metrics, and tracing are handled appropriately.

Core Features & Use Cases

  • Structured Logging: Defines a structured logging format for better queryability.
  • Span and Trace Management: Ensures proper handling of spans and traces for distributed tracing.
  • Metric Cardinality: Defines best practices for metric cardinality to avoid backend overload.
  • Use Case: When developing a new service, use this Skill to design the observability surface, ensuring that logging, metrics, and tracing are implemented correctly without violating functional purity.

Quick Start

Apply the observability guidelines to your module development process.

Frequently Asked Questions about observability

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

FAQPage Schema
How do I add structured logging without breaking functional purity?

Structured logging can be added in functional programming by defining a structured format for queryability, ensuring the logging surface is managed outside the purely functional core to maintain code purity.

What is the best way to manage spans and traces in a functional programming environment?

Managing spans and traces in functional programming requires defining proper handling structures for distributed tracing, ensuring observability tools operate without violating the functional purity of the core logic.

Why does metric cardinality cause backend overload and how do I control it?

Metric cardinality causes backend overload when unbounded dimensions generate excessive time series. Controlling it requires enforcing cardinality best practices to limit dimension combinations during metric definition.

Can I use this observability approach for nearly-pure functional projects?

Yes, this observability approach applies directly to Tier-2 nearly-pure functional projects, designed specifically to enable logging, metrics, and tracing without compromising the functional purity of the codebase.

How do I design observability surfaces when developing a new service?

Designing observability surfaces for a new service involves applying structured guidelines to module development, ensuring logging, metrics, and tracing are correctly implemented from the start.