Skip to content
cccskills
FreePublished on GitHub

production-observability

Use when adding service-wide Spring Boot 4 Actuator, Micrometer Observation and Tracing, OpenTelemetry or OTLP export, structured logging, health probes, dashboards, or alerts. Combine with ai-observability only for Spring AI-specific token, prompt, and model telemetry.

The English summary is being prepared. Showing the original description.

See how to install

Files included (5)

  • SKILL.md3.0 KB
  • agents/openai.yaml211 B
  • examples/bad-observation.java201 B
  • examples/good-observability.yml485 B
  • examples/good-observation.java496 B

SKILL.md (original)

Review the instructions the agent will receive before you install.

Production Observability

Instrument user-visible operations and operational boundaries, not every method.

Baseline

  • Add the Boot 4 Actuator starter and one metrics registry selected by the platform.
  • For OpenTelemetry tracing over OTLP, use spring-boot-starter-opentelemetry and Boot's management.opentelemetry.tracing.export.otlp.* properties.
  • Use Micrometer Observation for application metrics and traces.
  • Prefer Micrometer APIs over direct OpenTelemetry APIs in application code.
  • Export metrics and traces through OTLP when an OpenTelemetry collector is the platform boundary.
  • Expose only required actuator endpoints and secure non-public endpoints.

Observation conventions

  • Name observations by stable operation, such as orders.create.
  • Use low-cardinality key values for metrics and high-cardinality values only for traces.
  • Never tag metrics with user IDs, entity IDs, URLs containing IDs, or exception messages.
  • Register a ContextPropagatingTaskDecorator for async executor boundaries.
  • Enable Reactor automatic context propagation only deliberately and test it.
  • Avoid annotating already instrumented MVC controllers or repositories with @Observed.

Health and readiness

  • Keep liveness independent from remote dependencies.
  • Put traffic-critical dependencies in readiness groups.
  • Give custom health checks strict timeouts and stable detail keys.
  • Keep sensitive health details hidden from unauthenticated callers.

Logging and alerts

  • Emit structured logs correlated with trace and span IDs.
  • Redact credentials, tokens, personal data, prompts, and request bodies by default.
  • Alert on service-objective symptoms: error ratio, latency, saturation, or queue lag.
  • Include a runbook and service/dependency identity in every actionable alert.

Examples

  • See examples/good-observation.java, examples/good-observability.yml, and examples/bad-observation.java.

Official sources

Gotchas

  • Agent uses high-cardinality IDs as metric tags - reserve them for traces or logs.
  • Agent directly configures an OpenTelemetry SDK and disables Boot integration accidentally - prefer Boot and Micrometer support.
  • Agent exposes all actuator endpoints - expose the minimum and secure them.
  • Agent ties liveness to a database or broker - dependency outages can trigger restart loops.
  • Agent loses trace context in @Async work - register context propagation explicitly.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Use when adding Spring AI-specific model observations, token usage, latency, externally configured cost attribution, advisor telemetry, or protected prompt and completion logging. Use production-observability for general service metrics, health, logs, and OTLP setup.

The English summary is being prepared. Showing the original description.

rrezartprebreza/spring-boot-skills321Updated Oct 22, 2026

Use when versioning Spring MVC or WebFlux APIs in Spring Boot 3 / Spring Framework 6. Covers explicit URL, header, and media-type strategies, compatibility rules, and deprecation handling.

The English summary is being prepared. Showing the original description.

rrezartprebreza/spring-boot-skills321Updated Oct 22, 2026

Use when versioning Spring MVC or WebFlux APIs in Spring Boot 4 / Spring Framework 7. Covers built-in mapping versions, request version resolution, defaults, supported versions, and deprecation headers.

The English summary is being prepared. Showing the original description.

rrezartprebreza/spring-boot-skills321Updated Oct 22, 2026

Use when introducing or correcting grouped Spring Boot configuration, typed property binding, validation, profiles or secret injection. Do not rewrite unrelated single-value configuration.

The English summary is being prepared. Showing the original description.

rrezartprebreza/spring-boot-skills321Updated Oct 22, 2026

Use when packaging Spring Boot 4 as an OCI image, JVM container, AOT application, or GraalVM native executable. Covers buildpacks, layers, runtime hints, probes, security, and verification.

The English summary is being prepared. Showing the original description.

rrezartprebreza/spring-boot-skills321Updated Oct 22, 2026

Use when packaging a Spring Boot 3 application as an OCI image or GraalVM native executable. Covers buildpacks, layered images, JVM containers, AOT hints, probes, security, and verification.

The English summary is being prepared. Showing the original description.

rrezartprebreza/spring-boot-skills321Updated Oct 22, 2026

See all skills by rrezartprebreza

Report a problem with this skill