98f581ec97
- Updated cursor rules to emphasize the importance of dependency injection and logging practices. - Introduced a new user management domain, including entities, services, handlers, and validation. - Implemented user authentication features such as login, registration, and role-based access control. - Added Redis integration for token management and caching. - Enhanced API documentation with Swagger for user-related endpoints. - Updated configuration to support new JWT settings and Redis connection parameters.
71 lines
1.5 KiB
YAML
71 lines
1.5 KiB
YAML
server:
|
|
host: "0.0.0.0"
|
|
port: 8081
|
|
timeout: 30s
|
|
read_timeout: 10s
|
|
write_timeout: 10s
|
|
|
|
database:
|
|
mongodb:
|
|
uri: "mongodb://localhost:27017"
|
|
name: "tender_management"
|
|
timeout: 10s
|
|
max_pool_size: 100
|
|
|
|
cache:
|
|
redis:
|
|
host: "localhost"
|
|
port: 6379
|
|
password: ""
|
|
db: 0
|
|
pool_size: 10
|
|
|
|
queue:
|
|
rabbitmq:
|
|
url: "amqp://guest:guest@localhost:5672/"
|
|
exchange: "tender_exchange"
|
|
queues:
|
|
scraping: "scraping_queue"
|
|
processing: "processing_queue"
|
|
notifications: "notifications_queue"
|
|
|
|
search:
|
|
elasticsearch:
|
|
urls: ["http://localhost:9200"]
|
|
username: ""
|
|
password: ""
|
|
index_prefix: "tender_"
|
|
|
|
auth:
|
|
jwt:
|
|
access_secret: "your-super-secret-access-token-key-here-make-it-long-and-secure"
|
|
refresh_secret: "your-super-secret-refresh-token-key-here-make-it-long-and-secure"
|
|
access_expires_in: 3600 # 1 hour in seconds
|
|
refresh_expires_in: 2592000 # 30 days in seconds
|
|
|
|
ai:
|
|
openai:
|
|
api_key: ""
|
|
model: "gpt-3.5-turbo"
|
|
max_tokens: 1000
|
|
|
|
scraping:
|
|
user_agent: "TenderBot/1.0"
|
|
timeout: 30s
|
|
max_retries: 3
|
|
delay_between_requests: 1s
|
|
|
|
logging:
|
|
level: "info"
|
|
format: "json"
|
|
output: "file" # stdout, stderr, file
|
|
file:
|
|
path: "./logs/app.log"
|
|
max_size: 100 # Max size in MB before rotation
|
|
max_backups: 5 # Number of backup files to keep
|
|
max_age: 30 # Max age in days to keep log files
|
|
compress: true # Compress rotated files
|
|
|
|
rate_limiting:
|
|
requests_per_minute: 100
|
|
burst: 20 |