# =============================================================================
# Link Service Configuration
# =============================================================================

# Service Information
# Basic service identification and network configuration
SERVICE_SUB=link
SERVICE_NAME=Link
SERVICE_LOCATION=hf
SERVICE_PORT=18888

# Logging Configuration
# Application logging level and optional log file path
LOG_LEVEL=INFO
LOG_PATH=logs
# Whether to output logs to stdout, 1=enabled, 0=disabled, default: 0
LOG_STDOUT_ENABLE=0

# =============================================================================
# Database Configuration
# =============================================================================

# MySQL Database Settings
# Primary database connection configuration for persistent data storage
MYSQL_HOST=$YOUR_MYSQL_HOST
MYSQL_PORT=$YOUR_MYSQL_POST
MYSQL_USER=$YOUR_MYSQL_USER
MYSQL_PASSWORD=$YOUR_MYSQL_PASSWORD
MYSQL_DB=$YOUR_MYSQL_DB

# Redis Cache Settings
# Redis cluster configuration for caching, session management, and real-time data
# Only one cluster address and stand-alone address can be configured, and the cluster address has high priority.
# Cluster address
# REDIS_CLUSTER_ADDR=$YOUR_REDIS_CLUSTER_ADDR
# Stand-alone address
#REDIS_ADDR=
REDIS_PASSWORD=$YOUR_REDIS_PASSWORD
# Cache expiration time in seconds (1 hour = 3600 seconds)
REDIS_EXPIRE=3600

# =============================================================================
# OpenTelemetry Observability Configuration
# =============================================================================

# OTLP (OpenTelemetry Protocol) Configuration
# Distributed tracing and metrics collection settings
# OTLP endpoint for telemetry data submission
OTLP_ENDPOINT=$YOUR_OTLP_ENDPOINT
# Service name for telemetry identification
OTLP_SERVICE_NAME=Link
# Data center location for telemetry reporting
OTLP_DC=hf
# Enable/disable telemetry reporting (1=enabled, 0=disabled)
OTLP_ENABLE=0

# Metrics Collection Configuration
# SDK metric reporting interval, recommended < 30000ms, default: 1000ms
OTLP_METRIC_EXPORT_INTERVAL_MILLIS=3000
# Metrics export timeout to server in milliseconds, default: 5000ms
OTLP_METRIC_EXPORT_TIMEOUT_MILLIS=3000
# Server connection establishment timeout in milliseconds, default: 5000ms
OTLP_METRIC_TIMEOUT=3000

# Distributed Tracing Configuration
# Server connection establishment timeout in milliseconds, default: 5000ms
OTLP_TRACE_TIMEOUT=3000
# Maximum queue size for BatchSpanProcessor data export, default: 2048
OTLP_TRACE_MAX_QUEUE_SIZE=2048
# Delay interval between consecutive exports in BatchSpanProcessor, default: 5000ms
OTLP_TRACE_SCHEDULE_DELAY_MILLIS=3000
# Maximum batch size for BatchSpanProcessor data export, default: 512
OTLP_TRACE_MAX_EXPORT_BATCH_SIZE=500
# Maximum allowed time for data export from BatchSpanProcessor, default: 30000ms
OTLP_TRACE_EXPORT_TIMEOUT_MILLIS=3000

# =============================================================================
# Message Queue
# =============================================================================

# Apache Kafka Configuration
# Message queue settings for asynchronous processing and event streaming
KAFKA_ENABLE=0
KAFKA_SERVERS=$YOUR_KAFKA_SERVERS
KAFKA_TIMEOUT=10
KAFKA_TOPIC=spark-agent-builder

# =============================================================================
# External Service Configuration
# =============================================================================
# Python Environment Configuration
PYTHONUNBUFFERED=1
# Service env: development prerelease production
ENVIRONMENT=development
# Polaris Configuration Center
USE_POLARIS=false
POLARIS_URL=http://YOUR_POLARIS_HOST:8090
POLARIS_CLUSTER=dev
POLARIS_USERNAME=YOUR_USERNAME
POLARIS_PASSWORD=YOUR_POLARIS_PASSWORD
# Blacklist: Network Segment / IP / Domain Name or empty
SEGMENT_BLACK_LIST=
IP_BLACK_LIST=
DOMAIN_BLACK_LIST=
# Default AppID in Tool Management and Execution Interface
DEFAULT_APPID=defappid
# Snowflake Algorithm: ID Generation
DATACENTER_ID=1
WORKER_ID=1
# Distinguish between official and third-party tools.
OFFICIAL_TOOL=official
THIRD_TOOL=third