logging
Consistent, safe log statements with correct levels and no PII. Use when adding or reviewing log statements.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Consistent, safe log statements with correct levels and no PII. Use when adding or reviewing log statements.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Team quality gate as executable instruction. Use when reviewing completed work before merge, or when processing PR review comments received from other reviewers.
Generate well-formed user stories from technical context. Use when generating or improving story descriptions for an issue tracker.
Type-safe validated configuration properties from application.yml. Use when adding any externalisable value.
Consistent error handling with named exceptions and global handler. Use when implementing any method that can fail with a business reason.
Team standard for improving existing code without changing behaviour. Use when refactoring code.
Team threat model as executable instruction. Use when checking code for security issues before merge.
| name | logging |
| description | Consistent, safe log statements with correct levels and no PII. Use when adding or reviewing log statements. |
When to load it: When adding any new log statement, or when reviewing log coverage in an existing feature.
Produces log statements at the correct level, with safe content (no PII, no full request/response bodies), following a consistent pattern across the codebase.
LoggerFactory.getLogger()). Never System.out.println.DEBUG — service method entry and exit. Verbose, for local diagnosis.INFO — business events. Something meaningful happened (resource created, query returned results).WARN — recoverable conditions. Something unexpected but handled (empty result, fallback used).ERROR — exception boundaries only. Once per failure, with full stack trace.private static final Logger log = LoggerFactory.getLogger([ClassName].class);
// Service entry (DEBUG)
log.debug("Finding [resource] id={}", id);
// Business event (INFO)
log.info("Created [resource] id={}", resource.getId());
// Recoverable condition (WARN)
log.warn("No [resource] found for id={}, returning empty result", id);
// Exception boundary (ERROR — once, with stack trace)
log.error("Failed to retrieve [resource] id={}", id, ex);
System.out.println or System.err.printlnERROR inside service methods — only at exception boundaries (global handler){}