cardserver / tests /test_logging.py
GitHub Actions
🚀 Auto-deploy from GitHub
eb803dd
#!/usr/bin/env python3
"""
Test script to verify logging functionality
"""
import sys
import os
# Add the app directory to the Python path
sys.path.insert(0, os.path.join(os.path.dirname(__file__), '..', 'app'))
from services.request_logger import RequestEventLogger
from datetime import datetime
def test_logging():
"""Test the request logging functionality"""
print("Testing request logging...")
# Test initial request logging
RequestEventLogger.log_card_generation_request(
user_id="test-user-123",
username="test_user",
client_ip="127.0.0.1",
user_agent="Mozilla/5.0 (test)",
terms=["Liebe", "Abenteuer", "Erfolg"],
card_date="2025-06-17",
lang="de",
card_design_id=1,
symbol_ids=[1, 2, 3],
request_id="test-request-123"
)
# Test generator prompt logging
RequestEventLogger.log_generator_prompt(
request_id="test-request-123",
prompt="Du bist ein Sexoskop-Orakel...",
terms=["Liebe", "Abenteuer", "Erfolg"],
card_date="2025-06-17",
constellation="Zwillinge",
lang="de"
)
# Test LLM request logging
RequestEventLogger.log_llm_request(
request_id="test-request-123",
prompt="Du bist ein Sexoskop-Orakel...",
generation_params={
"max_new_tokens": 100,
"temperature": 0.7,
"do_sample": True
},
model_info={"model_name": "test-model", "version": "1.0"}
)
# Test LLM response logging
RequestEventLogger.log_llm_response(
request_id="test-request-123",
generated_text="Die Sterne stehen günstig für Liebe und Abenteuer.",
attempt=1,
constraints_met=True,
terms=["Liebe", "Abenteuer", "Erfolg"]
)
# Test card renderer params logging
RequestEventLogger.log_card_renderer_params(
request_id="test-request-123",
card_design_id=1,
symbol_ids=[1, 2, 3],
text="Die Sterne stehen günstig für Liebe und Abenteuer.",
base_images_path="/path/to/base/images",
symbols_images_path="/path/to/symbols",
font_path="/path/to/font",
output_path="/path/to/output"
)
# Test successful result logging
RequestEventLogger.log_card_generation_result(
request_id="test-request-123",
success=True,
card_id="card-123",
card_file_id="file-123",
qr_code_file_id="qr-123",
qr_content_url="https://example.com/card/123"
)
print("✅ Logging test completed successfully!")
print("📁 Check logs/request_events.log for the logged events")
if __name__ == "__main__":
test_logging()