backend-logging-traceability
Backend logging and traceability standard for BE Dev.
Skill by evolplus
Chalk Labs
Need help deploying backend-logging-traceability?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/evolplus-backend-logging-traceability
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: backend, testing, security
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md and code. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/backend-logging-traceability
What's inside
- Skill name
backend-logging-traceability- Description
- Backend logging and traceability standard for BE Dev. Use when implementing, refactoring, or reviewing backend handlers/controllers, services, repositories, workers, schedulers, jobs, queue consumers/producers, external integrations, auth paths, state transitions, retries, or error handling, especially when code has sparse logs, poor operator traceability, missing debug/info/warn/error coverage, missing correlation/request IDs, or weak incident-diagnosis evidence.
- License
- Apache-2.0
- Instructions
- 86 lines in SKILL.md · view on GitHub
Files (2)
- SKILL.md
- openai.yaml · agents/
SKILL.md (first lines)
# Backend Logging Traceability ## Goal Make every backend change diagnosable by maintainers and operators without reading source code first. Logs must explain what operation ran, which path it took, what changed, which dependency was involved, how long it took, and why it failed. Use the project's existing logger, context propagation, metrics, and tracing conventions. Do not introduce a new logging library unless an ADR or architecture task already approved it. ## When to use Use this skill whenever BE Dev changes or reviews backend runtime behavior: HTTP/gRPC handlers, service/application methods, repositories, workers, schedulers, queue consumers/producers, external integrations, retries, state transitions, and error paths. Load it alongside `be-framework-coding-standard` before editing source and again before `ready-for-deploy`. ## Inputs and outputs - **Inputs:** assigned task, SRS US/FR/NFR IDs, architecture components, instrumentation contract when present, current backend logger/middleware, error envelope, auth context, data contracts, and existing log format. - **Outputs:** backend code with structured debug/info/warn/error logs, correlation/request/trace propagation, safe fields, log-aware tests or smoke evidence, and implementation notes naming the important log events added. ## Logging coverage procedure 1. **Map operations before editing.** List each changed endpoint, worker, job, consumer, producer, scheduler, service method, repository operation, external call, transaction, and state transition. 2. **Preserve the logging substrate.** Reuse existing logger injection, middleware, context keys, trace/span handling, request ID, correlation ID, and redaction helpers. If none exists, use the framework/stdlib logger already in the stack and file an open issue for a structured-logging foundation. 3. **Add boundary logs.** Each changed operation needs: - start/received log with operation name and safe identifiers; - success/completed log with status/result class, changed-counts where useful, and duration; - failure log on every propagated error path with error code/class and enough context to route ownership. 4. **Add decision logs.** Log branch decisions that matter during incident diagnosis: validation rejection, auth/authz denial, idempotency duplicate, feature flag branch, skipped work, retry scheduling, fallback, circuit/degraded dependency path, no-op due to state, and partial-success handling. 5. **Add dependency logs.** For database, queue, cache, object storage, and external service calls, log the dependency name, operation, attempt number, timeout/retry classification, result class, duration, and safe resource IDs. 6. **Add state-change logs.** For create/update/delete, lifecycle transitions, gate-field writes, moderation/actions, billing/payment-like flows, and irreversible operations, log previous state, next state, actor/system source, reason, and idempotency key when present. 7. **Review levels.** Use the taxonomy below; do not put everything at `info`. 8. **Verify.** Use log-capture tests where the project has them. Otherwise run a focused unit/integration/smoke path and record representative emitted events in the task notes or QA handoff without secrets or PII. ## Level taxonomy | Level | Use for | Do not use for | |---|---|---| | `debug` | Internal branch decisions, sanitized payload shape/counts, query/filter choices, retry classifier inputs, feature-flag evaluation, cache hit/miss, no-op reason. | Secrets, full request/response bodies, high-cardinality spam in hot loops without sampling. | | `info` | Operation received/completed, business state transition, job/consumer batch summary, external dependency success, admin/moderation action, data migration step, important lifecycle event. | Expected per-field validation noise or every line inside a tight loop. | | `warn` | Recoverable anomaly, transient dependency failure before retry, fallback/degraded mode, duplicate idempotency key, skipped unsafe work, rate limit, partial success, stale/out-of-order message. | Fatal failures that stop the operation. | | `error` | Operation failed and returns/propagates an error, retry budget exhausted, message moved to DLQ, transaction rollback, invariant violation, unexpected panic/exception, dependency outage after classification. | Expected user validation failures that are handled normally. | ## Required fields Prefer existing project field names. If the project has no convention, use these names consistently: | Field | Purpose | |---|---| | `operation` | Stable name such as `admin.config.update`, `activity.ingest.consume`, or `account.delete.request`. | | `component` / `service` | Owning service/component from architecture. | | `request_id`, `correlation_id`, `trace_id` | Request and cross-service traceability where available. | | `actor_id`, `tenant_id`, `runner_id`, `admin_id` | Include only safe internal IDs and only when useful for ownership/routing. | | `resource_type`, `resource_id` | Safe domain resource reference. | | `status`, `result`, `error_code`, `error_class` | Outcome and routable failure class. | | `duration_ms` | Latency for request, dependency call, job, transaction, or batch. | | `attempt`, `max_attempts`, `retryable` | Retry and queue diagnostics. | | `idempotency_key` | Include when already part of the contract and safe to log. | | `changed_count`, `skipped_count`, `batch_size` | Batch/job/operator summaries. | ## Safety rules - Never log secrets, credentials, tokens, cookies, auth headers, OAuth codes, private keys, raw trace baggage, signed URLs, payment data, full addresses, health data, or full request/response bodies. - Mask or omit PII. If an identifier is not already safe in existing logs, hash or omit it. - Never swallow an error after logging it. Return, propagate, retry, or explicitly mark it handled. - Avoid duplicate error logs at every stack layer. Log once at the ownership boundary with enough context; lower layers may log debug details only when useful. - Keep log messages stable and grep-friendly. Prefer structured fields over prose-only messages. - Do not add noisy logs inside high-frequency loops without aggregation, sampling, or debug level. ## Ready-for-deploy checklist Before writing `plan-update.json`, confirm: - Every changed backend operation has start, success, and failure observability. - Every new error branch logs or is covered by a higher-level ownership-boundary log. - Every changed worker/job/consumer logs batch start/end, counts, retries, poison/DLQ path, and duration. - Every external dependency call has result/duration/error classification. - Every state transition that affects downstream behavior is logged with previous/next state and safe actor/resource IDs. - Correlation/request IDs are propagated into services, repositories, external clients, and async jobs where the stack supports it. - Tests or smoke evidence exercised at least one success and one failure/edge log path for high-risk behavior. ## Related skills - [`../be-framework-coding-standard/SKILL.md`](../be-framework-coding-standard/SKILL.md) - framework and track-specific backend implementation. - [`../api-contract-author/SKILL.md`](../api-contract-author/SKILL.md) - API contract updates when logged errors reflect public error models. - [`../data-lifecycle-contracts/SKILL.md`](../data-lifecycle-contracts/SKILL.md) - gate-field writes that require explicit state-change logs. - [`../format-boundary-contracts/SKILL.md`](../format-boundary-contracts/SKILL.md) - deterministic conversion failures that should be classified, not retried.
From evolplus/talos, Apache-2.0.
More from evolplus/talos
- 0.631score
design-system-author
evolplus
How to build a Figma Foundation page (design tokens + reusable components) BEFORE drawing screens, so spacing / text sizes / button styles / element alignment…
SkillAFreshness: A★ 8Claude Code +9 - 0.631score
be-framework-coding-standard
evolplus
Standardized backend implementation guidance for BE Dev using the SRS-declared Backend-Track and Backend-Framework.
SkillAFreshness: A★ 8Claude Code +9 - 0.628score
adr-author
evolplus
How to write an Architecture Decision Record under docs/decisions/.
SkillAFreshness: A★ 8Claude Code +9 - 0.628score
api-contract-author
evolplus
How to publish, freeze, and version an API contract under docs/api-contracts/.
SkillAFreshness: A★ 8Claude Code +9 - 0.626score
ba-post-implementation
evolplus
BA Phase 5 — post-implementation completeness verification (UI tasks).
SkillAFreshness: A★ 8Claude Code +9 - 0.626score
ba-design-completeness
evolplus
BA Phase 3 — post-sign-off design completeness verification.
SkillAFreshness: A★ 8Claude Code +9 - 0.626score
ba-iteration-planning
evolplus
BA Phase 4 — iteration dispatch planning.
SkillAFreshness: A★ 8Claude Code +9 - 0.626score
ba-mode-external-source
evolplus
BA Phase 1.C ingestion mode (ingest-from-external-source).
SkillAFreshness: A★ 8Claude Code +9 - 0.626score
ba-mode-reverse-engineer
evolplus
BA Phase 1.E ingestion mode (reverse-engineer-from-code) — brownfield onboarding Stage 3.
SkillAFreshness: A★ 8Claude Code +9 - 0.626score
codebase-inventory
evolplus
Produce the deterministic Tier-1 inventory of an existing codebase — routes/RPC/jobs, broker channels, persistent schema, external egress, deployables…
SkillAFreshness: A★ 8Claude Code +9 - 0.626score
data-lifecycle-contracts
evolplus
How SA identifies gate fields and cross-component column-write contracts in the data model, and documents them in docs/architecture.md §6 so BE/FE Dev know…
SkillAFreshness: A★ 8Claude Code +9 - 0.626score
ba-mode-requirements-folder
evolplus
BA Phase 1.F ingestion mode (ingest-from-requirements-folder) — greenfield with fragmented upstream.
SkillAFreshness: A★ 8Claude Code +9
Signals
- Stars
- 8
- Forks
- 0
- Open issues
- 1
- Last commit (this folder)
- Jul 19, 2026 (3 months ago)
- Last release
- Oct 12, 2026 (19 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- Apache-2.0
- Repository
- github.com/evolplus/talos
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from evolplus
- 0.631score
be-framework-coding-standard
evolplus
Standardized backend implementation guidance for BE Dev using the SRS-declared Backend-Track and Backend-Framework.
SkillAFreshness: A★ 8Claude Code +9 - 0.631score
design-system-author
evolplus
How to build a Figma Foundation page (design tokens + reusable components) BEFORE drawing screens, so spacing / text sizes / button styles / element alignment…
SkillAFreshness: A★ 8Claude Code +9 - 0.628score
adr-author
evolplus
How to write an Architecture Decision Record under docs/decisions/.
SkillAFreshness: A★ 8Claude Code +9 - 0.628score
api-contract-author
evolplus
How to publish, freeze, and version an API contract under docs/api-contracts/.
SkillAFreshness: A★ 8Claude Code +9 - 0.626score
ba-iteration-planning
evolplus
BA Phase 4 — iteration dispatch planning.
SkillAFreshness: A★ 8Claude Code +9 - 0.626score
ba-design-completeness
evolplus
BA Phase 3 — post-sign-off design completeness verification.
SkillAFreshness: A★ 8Claude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get backend-logging-traceability running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
backend-logging-traceability skill. Agent Mart. https://agentmart.dev/skills/evolplus-backend-logging-traceability (last updated 2026-10-24)