Settings Reference¶
Main settings class: asyncmq.conf.global_settings.Settings.
Core¶
debug: bool = Falselogging_level: str = "INFO"structured_logging: bool = Falseworker_concurrency: int = 1worker_idle_poll_interval: float = 0.05worker_idle_poll_max_interval: float = 2.0scan_interval: float = 1.0heartbeat_ttl: int = 30max_job_payload_bytes: int | None = 1_048_576tasks: list[str] = []secret_key: str | None = Nonetracing_enabled: bool = Falsetracing_tracer_name: str = "asyncmq"tracing_span_prefix: str = "asyncmq.job"
Backend Configuration¶
backend(property): default backend instance (defaults toRedisBackend())
Postgres fields:
asyncmq_postgres_backend_url: str | Noneasyncmq_postgres_pool_options: dict[str, Any] | Nonepostgres_jobs_table_name: str = "asyncmq_jobs"postgres_repeatables_table_name: str = "asyncmq_repeatables"postgres_cancelled_jobs_table_name: str = "asyncmq_cancelled_jobs"postgres_workers_heartbeat_table_name: str = "asyncmq_workers_heartbeat"
MongoDB fields:
- asyncmq_mongodb_backend_url: str | None
- asyncmq_mongodb_database_name: str | None = "asyncmq"
Retry/Safety/Runtime¶
enable_stalled_check: bool = Falsestalled_check_interval: float = 60.0stalled_threshold: float = 30.0sandbox_enabled: bool = Falsesandbox_default_timeout: float = 30.0sandbox_ctx: str | None = "spawn"
Serialization and Logging¶
json_dumps: Callable[[Any], str]json_loads: Callable[[str], Any]json_serializer(property)logging_config(property)
Tracing¶
Set tracing_enabled=True to emit optional OpenTelemetry spans around worker
job execution. AsyncMQ imports OpenTelemetry lazily; install opentelemetry-api
and configure your exporter in the host application. Without OpenTelemetry
installed, tracing is skipped without changing worker behavior.
Worker Lifecycle Hooks¶
worker_on_startup: Lifespan | list[Lifespan] | tuple[Lifespan, ...] | Noneworker_on_shutdown: Lifespan | list[Lifespan] | tuple[Lifespan, ...] | None
Dashboard¶
dashboard_configproperty returnsDashboardConfig
Dashboard CORS fields on DashboardConfig:
cors_allow_origins: tuple[str, ...] = ()cors_allow_methods: tuple[str, ...] = ("GET", "POST", "OPTIONS")cors_allow_headers: tuple[str, ...]cors_allow_credentials: bool = False
See also: - Settings Guide - Dashboard