marketplace/bundles/pm-dev-java-cui/skills/cui-logging/SKILL.md
CUI logging standards with CuiLogger, LogRecord patterns, and DSL-style LogMessages classes
npx skillsauth add cuioss/plan-marshall cui-loggingInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
REFERENCE MODE: This skill provides reference material. Load specific standards on-demand based on current task.
CUI-specific logging standards for projects using the CUI logging framework (cui-java-tools). This skill covers CuiLogger usage, LogRecord patterns, and DSL-style LogMessages classes.
Execution mode: Reference library; load standards progressively based on current logging task.
Prohibited actions:
Constraints:
This skill requires CUI library dependencies:
de.cuioss:cui-java-tools (CuiLogger, LogRecord)CRITICAL: Load these standards for any logging-related work.
Read: standards/logging-standards.md
This provides the foundational rules:
CuiLogger (SLF4J/Log4j FORBIDDEN)LogRecord for INFO/WARN/ERROR/FATAL levelsDSL Constants Pattern (load when creating LogMessages classes):
Read: standards/dsl-constants.md
Use when: Implementing DSL-style LogMessages classes with nested static classes and @UtilityClass pattern.
LogMessages Documentation (load when documenting):
Read: standards/logmessages-documentation.md
Use when: Writing AsciiDoc documentation for LogMessages classes.
Logging Maintenance (load for migration/refactoring):
Read: standards/logging-maintenance-reference.md
Use when: Large-scale logger migration, LogRecord implementation, or maintenance work.
// CORRECT
private static final CuiLogger LOGGER = new CuiLogger(MyClass.class);
// FORBIDDEN - Never use SLF4J or Log4j directly
private static final Logger LOGGER = LoggerFactory.getLogger(MyClass.class);
// CORRECT - Use LogRecord for INFO and above
LOGGER.info(INFO.USER_LOGIN, username);
LOGGER.warn(WARN.RATE_LIMIT, resourceName);
LOGGER.error(exception, ERROR.OPERATION_FAILED);
// DEBUG/TRACE - Direct logging allowed (no LogRecord needed)
LOGGER.debug("Debug message: %s", value);
// CORRECT - Exception FIRST
LOGGER.error(exception, ERROR.OPERATION_FAILED);
// WRONG - Exception position
LOGGER.error(ERROR.OPERATION_FAILED, exception);
pm-dev-java:java-core - General Java patterns (no CUI dependencies)pm-dev-java-cui:cui-testing - CUI test utilities including JUL testing with LogAsserts| Standard | Purpose | |----------|---------| | logging-standards.md | Core CuiLogger, LogRecord rules, and compliance verification | | dsl-constants.md | DSL-style constant organization | | logmessages-documentation.md | AsciiDoc documentation patterns | | logging-maintenance-reference.md | Migration and maintenance |
testing
A test skill for README generation
testing
A test skill with existing references
tools
Skill without references directory
development
Test skill with table-format references