167 lines
3.9 KiB
YAML
167 lines
3.9 KiB
YAML
# TankStopp Configuration File
|
|
# This file contains all configuration settings for the TankStopp application
|
|
|
|
# Server Configuration
|
|
server:
|
|
host: "localhost"
|
|
port: 8081
|
|
read_timeout: 30s
|
|
write_timeout: 30s
|
|
idle_timeout: 120s
|
|
shutdown_timeout: 10s
|
|
|
|
# Database Configuration
|
|
database:
|
|
# Path to the SQLite database file
|
|
path: "fuel_stops.db"
|
|
|
|
# Connection Pool Settings
|
|
connection_pool:
|
|
max_idle_connections: 10
|
|
max_open_connections: 100
|
|
connection_max_lifetime: "1h"
|
|
connection_max_idle_time: "30m"
|
|
|
|
# Logging Settings
|
|
logging:
|
|
# Log levels: silent, error, warn, info
|
|
level: "warn"
|
|
# Log queries that take longer than this threshold
|
|
slow_query_threshold: "200ms"
|
|
# Enable debug mode for detailed logging
|
|
debug: false
|
|
|
|
# Migration Settings
|
|
migration:
|
|
# Automatically run migrations on startup
|
|
auto_migrate: true
|
|
# Drop tables before migration (USE WITH CAUTION)
|
|
drop_tables_first: false
|
|
# Batch size for bulk operations
|
|
create_batch_size: 1000
|
|
|
|
# Performance Settings
|
|
performance:
|
|
# Prepare statements for better performance
|
|
prepare_statements: true
|
|
# Disable foreign key checks during migrations
|
|
disable_foreign_key_check: false
|
|
# Ignore relationships when migrating
|
|
ignore_relationships_when_migrating: false
|
|
# Query all fields by default
|
|
query_fields: true
|
|
# Enable dry run mode for testing (no actual database changes)
|
|
dry_run: false
|
|
# Create records in batches
|
|
create_in_batches: 100
|
|
|
|
# Application Settings
|
|
app:
|
|
# Application name
|
|
name: "TankStopp"
|
|
# Application version
|
|
version: "1.0.0"
|
|
# Environment: development, production, test
|
|
environment: "development"
|
|
# Enable debug mode
|
|
debug: true
|
|
|
|
# Security Settings
|
|
security:
|
|
# Session configuration
|
|
session:
|
|
# Session timeout duration
|
|
timeout: "24h"
|
|
# Session cookie name
|
|
cookie_name: "tankstopp_session"
|
|
# Use secure cookies (requires HTTPS)
|
|
secure_cookies: false
|
|
# HTTP only cookies
|
|
http_only: true
|
|
|
|
# Password requirements
|
|
password:
|
|
min_length: 8
|
|
require_uppercase: true
|
|
require_lowercase: true
|
|
require_numbers: true
|
|
require_special_chars: false
|
|
|
|
# Logging Configuration
|
|
logging:
|
|
# Log level: debug, info, warn, error
|
|
level: "info"
|
|
# Log format: json, text
|
|
format: "text"
|
|
# Log output: stdout, stderr, file
|
|
output: "stdout"
|
|
# Log file path (when output is file)
|
|
file_path: "logs/tankstopp.log"
|
|
# Enable log rotation
|
|
rotation:
|
|
enabled: false
|
|
max_size: "100MB"
|
|
max_age: "30d"
|
|
max_backups: 5
|
|
|
|
# External Services
|
|
external_services:
|
|
# OpenStreetMap Overpass API for fuel station search
|
|
overpass_api:
|
|
url: "https://overpass-api.de/api/interpreter"
|
|
timeout: "30s"
|
|
max_retries: 3
|
|
search_radius: 5000 # meters
|
|
|
|
# Development Settings (only used in development environment)
|
|
development:
|
|
# Enable hot reload
|
|
hot_reload: true
|
|
# Enable request logging
|
|
request_logging: true
|
|
# Enable profiling endpoints
|
|
profiling: false
|
|
# Static file serving
|
|
static_files:
|
|
directory: "./static"
|
|
cache_duration: "1h"
|
|
|
|
# Production Settings (only used in production environment)
|
|
production:
|
|
# Enable request logging
|
|
request_logging: false
|
|
# Enable profiling endpoints
|
|
profiling: false
|
|
# Static file serving
|
|
static_files:
|
|
directory: "./static"
|
|
cache_duration: "24h"
|
|
# Enable compression
|
|
compression:
|
|
enabled: true
|
|
level: 6
|
|
|
|
# Feature Flags
|
|
features:
|
|
# Enable fuel station search
|
|
fuel_station_search: true
|
|
# Enable vehicle management
|
|
vehicle_management: true
|
|
# Enable statistics dashboard
|
|
statistics_dashboard: true
|
|
# Enable data export
|
|
data_export: true
|
|
# Enable API endpoints
|
|
api_endpoints: true
|
|
|
|
# Default User Settings
|
|
defaults:
|
|
# Default currency for new users
|
|
currency: "EUR"
|
|
# Default fuel type for new vehicles
|
|
fuel_type: "Super E5"
|
|
# Default distance unit
|
|
distance_unit: "km"
|
|
# Default volume unit
|
|
volume_unit: "liters"
|