Skip to content

APScheduler ​

APSchedulerHandler is a logging.Handler that routes APScheduler log records through Logly. A convenience function setup_apscheduler_logging() configures everything in one call.

Installation ​

This integration requires the apscheduler package.

bash
uv add logly[apscheduler]
bash
pip install "logly[apscheduler]"
bash
uv add apscheduler
bash
pip install apscheduler

Missing Dependency

If apscheduler is not installed, you'll see:

ModuleNotFoundError: No module named 'apscheduler'

Quick Setup ​

python
from logly.integrations.apscheduler import setup_apscheduler_logging

setup_apscheduler_logging()

Manual Setup ​

python
import logging
from logly.integrations.apscheduler import APSchedulerHandler

handler = APSchedulerHandler()
logging.getLogger("apscheduler").addHandler(handler)

setup_apscheduler_logging() ​

ArgumentTypeDefaultDescription
levelstr"INFO"Minimum log level for APScheduler logs

Tips ​

  • Use setup_apscheduler_logging() for the simplest integration.
  • Set level="WARNING" to suppress routine scheduler start/stop messages.

Full Example ​

python
from apscheduler.schedulers.background import BackgroundScheduler
from logly import logger
from logly.integrations.apscheduler import setup_apscheduler_logging

setup_apscheduler_logging(level="INFO")

scheduler = BackgroundScheduler()


@scheduler.scheduled_job("interval", hours=1)
def cleanup():
    logger.info("Running cleanup job")


scheduler.start()

Released under the MIT License.