File size: 2,743 Bytes
eb803dd
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
#!/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()