Whether this driver is a BY-DESIGN high-frequency poller — a dispatcher that
sweeps a work queue on a tight cron (e.g. every minute) and does bounded work
per sweep. Overriding to true exempts jobs of this type from the engine's
high-frequency cron warning banner. Leave false for ordinary jobs: the
warning exists because a tight cron on a work job is usually a design smell.
Execute the scheduled job
This is the main entry point for job execution. The plugin should:
The Details object will be serialized to JSON and stored in ScheduledJobRun.Details
Execution context including schedule, run record, and user
Promise resolving to execution result
Format notification content for job completion
Called by the engine when notifications are enabled and should be sent. The plugin can customize the notification based on the job type and execution result.
Execution context
The execution result
Notification content
ProtectedgetProtectedGet the job type entity for this plugin
The schedule
User context
Optionalprovider: IMetadataProviderPromise resolving to the job type entity
ProtectedlogProtectedLog execution progress
Log message
OptionalverboseOnly: booleanWhether to only log in verbose mode
ProtectedlogProtectedLog execution error
Error message
Optionalerror: anyOptional error object
ProtectedparseProtectedParse and validate the Configuration JSON field
Helper method for plugins to parse their configuration with type safety. Throws if configuration is invalid.
The configuration type
The schedule containing the configuration
Parsed configuration
Validate job-specific configuration
Called when creating or updating a scheduled job to ensure the Configuration JSON is valid for this job type.
The schedule being validated
Validation result with any errors or warnings
Deletes expired diagnostic bundles and finished diagnostic sessions. A bundle's stored file (object and
MJ: Filesrow) is deleted first; a bundle whose file cannot be deleted is kept. A deleted bundle's bytes are also dropped from memory. Session chunks go with their session through the FK's ON DELETE CASCADE. Rows that fail are skipped for the rest of the run and reported inDetails.Failures.