# oban_doctor v0.2.2 - Table of Contents ## Pages - [README](readme.md) - [Configuration](configuration.md) - [Runtime Plugins](plugins.md) ## Modules - [ObanDoctor](ObanDoctor.md): ObanDoctor - Static analysis tool for Oban workers and configuration. - Worker Checks - [ObanDoctor.Check.Worker.MissingQueue](ObanDoctor.Check.Worker.MissingQueue.md): Checks for workers using queues that are not defined in the Oban configuration. - [ObanDoctor.Check.Worker.NoMaxAttempts](ObanDoctor.Check.Worker.NoMaxAttempts.md): Checks for workers that don't specify max_attempts. - [ObanDoctor.Check.Worker.StateGroupUsage](ObanDoctor.Check.Worker.StateGroupUsage.md): Checks for workers using the `:all` state group in unique configuration. - [ObanDoctor.Check.Worker.UniqueWithoutKeys](ObanDoctor.Check.Worker.UniqueWithoutKeys.md): Checks for workers with unique configuration but no explicit keys option. - [ObanDoctor.Check.Worker.UniquenessMissingStates](ObanDoctor.Check.Worker.UniquenessMissingStates.md): Checks for workers with unique configuration using explicit states that miss recommended ones. - Config Checks - [ObanDoctor.Check.Config.InsertTriggerEnabled](ObanDoctor.Check.Config.InsertTriggerEnabled.md): Checks for Oban instances that have `insert_trigger` enabled (default behavior). - [ObanDoctor.Check.Config.MissingPruner](ObanDoctor.Check.Config.MissingPruner.md): Checks for Oban instances without a pruner plugin configured. - [ObanDoctor.Check.Config.NoReindexer](ObanDoctor.Check.Config.NoReindexer.md): Checks for Oban instances without the Reindexer plugin configured. - Plugins - [ObanDoctor.Plugins.QueueMetrics](ObanDoctor.Plugins.QueueMetrics.md): Monitors queue depth and job counts across Oban queues. - [ObanDoctor.Plugins.TableHealth](ObanDoctor.Plugins.TableHealth.md): Monitors the health of the oban_jobs table including size, bloat, and vacuum status. - Internal - [ObanDoctor.CLI.Output](ObanDoctor.CLI.Output.md): Handles formatting and displaying check results. - [ObanDoctor.Check](ObanDoctor.Check.md): Behaviour for implementing checks. - [ObanDoctor.Config](ObanDoctor.Config.md): Configuration struct for ObanDoctor. - [ObanDoctor.ConfigFile](ObanDoctor.ConfigFile.md): Handles loading and parsing of `.oban_doctor.exs` configuration files. - [ObanDoctor.Issue](ObanDoctor.Issue.md): Represents an issue found during analysis. - [ObanDoctor.ObanDiscovery](ObanDoctor.ObanDiscovery.md): Discovers Oban configuration from config files. - [ObanDoctor.WorkerDiscovery](ObanDoctor.WorkerDiscovery.md): Discovers Oban workers by parsing source files. ## Mix Tasks - [mix oban_doctor](Mix.Tasks.ObanDoctor.md): Runs all ObanDoctor checks (workers and config). - [mix oban_doctor.check_config](Mix.Tasks.ObanDoctor.CheckConfig.md): Runs checks against Oban configuration. - [mix oban_doctor.check_workers](Mix.Tasks.ObanDoctor.CheckWorkers.md): Runs checks against Oban worker definitions. - [mix oban_doctor.gen.config](Mix.Tasks.ObanDoctor.Gen.Config.md): Generates a default `.oban_doctor.exs` configuration file.