Skip to content

Commit 22f0c7c

Browse files
nihilistauclaude
andcommitted
feat: add structured logging to penthouse chat handler
Chat handler now logs via StructuredLogger when inference fails, so errors appear in data/structured_logs.jsonl instead of being lost in stdout. Logs entry/exit of _generate_chat_response. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 450ae06 commit 22f0c7c

1 file changed

Lines changed: 14 additions & 1 deletion

File tree

content/scenes/penthouse/penthouse_scene.py

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1658,9 +1658,22 @@ def handle_chat(data):
16581658

16591659
def _respond() -> None:
16601660
try:
1661+
logger.info("[CHAT] Generating response for: %s", msg[:50])
16611662
self._generate_chat_response(name, msg)
1663+
logger.info("[CHAT] Response emitted successfully")
16621664
except Exception as exc:
1663-
logger.warning("Chat response generation failed: %s", exc)
1665+
logger.error("[CHAT] Response generation FAILED: %s", exc, exc_info=True)
1666+
try:
1667+
from engine.observability.structured_logger import get_structured_logger, LogLevel
1668+
get_structured_logger().log(
1669+
LogLevel.ERROR,
1670+
f"Penthouse chat failed: {exc}",
1671+
service="penthouse",
1672+
tags=["chat", "inference", "error"],
1673+
context={"message": msg[:100], "error": str(exc)},
1674+
)
1675+
except Exception:
1676+
pass
16641677

16651678
threading.Thread(target=_respond, daemon=True, name="chat-respond").start()
16661679

0 commit comments

Comments
 (0)