Skip to content

docs: deepen audit + cache guides#65

Merged
jlc488 merged 1 commit into
mainfrom
docs/deepen-audit-cache
Jun 3, 2026
Merged

docs: deepen audit + cache guides#65
jlc488 merged 1 commit into
mainfrom
docs/deepen-audit-cache

Conversation

@jlc488

@jlc488 jlc488 commented Jun 3, 2026

Copy link
Copy Markdown
Contributor

EN

Brings the Audit Logging and Caching guides to the same beginner, step-by-step depth as the tutorial, with verified APIs and full file paths in every code block.

Audit (guides/audit)

  • Fixes the incomplete example. The old AuditEvent.builder() snippet was comment-only (// action / target / outcome — see the builder) — now a complete, compiling call with real fields.
  • Corrects a wrong claim. occurredAt is required (build() throws on null) and actor is not auto-filled from the security context — the publisher just forwards to an async executor and the listener stores actor as-is. The guide now says so explicitly.
  • field table (action/occurredAt/target/outcome/actor/metadata/ip/userAgent); AuditOutcome is SUCCESS|FAILURE
  • read-the-trail: console + REST tabs (curl to /admin/api/v1/audit-logs)

Cache (guides/cache)

  • plain-language intro (what a cache is, the one-property backend swap)
  • application.yml path + the spring.data.redis block the redis backend needs
  • @Cacheable and @CacheEvict example with file path
  • a "confirm it's actually caching" tip (log on miss / redis-cli KEYS)

Both guides EN + KO.

Also pins { #audit-logs } on admin-console.ko.md so the EN-style fragment link resolves in the KO build.

Verification: mkdocs build --strict — clean, no anchor/link warnings.

KO (한국어)

감사 로깅·캐시 가이드를 튜토리얼과 같은 초보자용 step-by-step 깊이로, 검증된 API와 모든 코드 블록의 전체 파일 경로로 보강.

감사 (guides/audit)

  • 불완전 예제 수정. 기존 AuditEvent.builder() 스니펫은 주석만 있었음 — 이제 실제 필드로 컴파일되는 완전한 호출.
  • 틀린 설명 정정. occurredAt필수(null이면 build() 예외), actor는 보안 컨텍스트에서 자동으로 안 채워짐 — publisher는 비동기 executor로 넘기기만 하고 리스너는 actor를 그대로 저장. 가이드에 명시.
  • 필드 표(action/occurredAt/target/outcome/actor/metadata/ip/userAgent); AuditOutcomeSUCCESS|FAILURE
  • 조회: 콘솔 + REST 탭(/admin/api/v1/audit-logs curl)

캐시 (guides/cache)

  • 쉬운 말 도입(캐시란 무엇인지, 속성 하나로 백엔드 교체)
  • application.yml 경로 + redis 백엔드가 필요로 하는 spring.data.redis 블록
  • 파일 경로와 함께 @Cacheable @CacheEvict 예제
  • "정말 캐시되는지 확인" 팁(미스 시 로그 / redis-cli KEYS)

두 가이드 모두 한/영.

ko 빌드에서 EN식 fragment 링크가 동작하도록 admin-console.ko.md{ #audit-logs } 고정.

검증: mkdocs build --strict — clean, 앵커/링크 경고 없음.

Bring the audit-logging and caching guides to the same beginner,
step-by-step depth as the tutorial, with verified APIs and full file
paths in every code block.

audit:
- fix the incomplete example: the previous AuditEvent.builder() snippet
  was comment-only ("action / target / outcome — see the builder"); now
  a complete, compiling call with real fields
- correct a wrong claim: occurredAt is REQUIRED (build() throws on null)
  and actor is NOT auto-filled from context — the publisher just forwards
  to an async executor and the listener stores actor as-is
- field table (action/occurredAt/target/outcome/actor/metadata/ip/ua),
  AuditOutcome is SUCCESS|FAILURE
- read-the-trail: console + REST tabs (curl to /admin/api/v1/audit-logs)

cache:
- plain-language intro (what a cache is, one-property swap)
- application.yml path + the spring.data.redis block redis needs
- @Cacheable AND @CacheEvict example with file path
- "confirm it's caching" tip (log on miss / redis-cli KEYS)

Both guides EN + KO. Also pin { #audit-logs } on admin-console.ko.md so
the EN-style fragment link resolves in the KO build.

Verification: mkdocs build --strict clean, no anchor/link warnings.
@jlc488 jlc488 merged commit 356ceca into main Jun 3, 2026
2 checks passed
@jlc488 jlc488 deleted the docs/deepen-audit-cache branch June 3, 2026 13:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant