pub struct Job {
pub queue: String,
pub created_at: Option<DateTime<Utc>>,
pub enqueued_at: Option<DateTime<Utc>>,
pub at: Option<DateTime<Utc>>,
pub reserve_for: Option<usize>,
pub retry: Option<usize>,
pub priority: Option<u8>,
pub backtrace: Option<usize>,
pub custom: HashMap<String, Value>,
/* private fields */
}
Expand description
A Faktory job.
See also the Faktory wiki.
Fields§
§queue: String
The queue this job belongs to. Usually default
.
created_at: Option<DateTime<Utc>>
When this job was created.
enqueued_at: Option<DateTime<Utc>>
When this job was supplied to the Faktory server.
at: Option<DateTime<Utc>>
When this job is scheduled for.
Defaults to immediately.
reserve_for: Option<usize>
How long to allow this job to run for.
Defaults to 600 seconds.
retry: Option<usize>
Number of times to retry this job.
Defaults to 25.
priority: Option<u8>
The priority of this job from 1-9 (9 is highest).
Pushing a job with priority 9 will effectively put it at the front of the queue. Defaults to 5.
backtrace: Option<usize>
Number of lines of backtrace to keep if this job fails.
Defaults to 0.
custom: HashMap<String, Value>
Extra context to include with the job.
Faktory workers can have plugins and middleware which need to store additional context with the job payload. Faktory supports a custom hash to store arbitrary key/values in the JSON. This can be extremely helpful for cross-cutting concerns which should propagate between systems, e.g. locale for user-specific text translations, request_id for tracing execution across a complex distributed system, etc.
Implementations§
source§impl Job
impl Job
sourcepub fn new<S, A>(kind: S, args: Vec<A>) -> Selfwhere
S: Into<String>,
A: Into<Value>,
pub fn new<S, A>(kind: S, args: Vec<A>) -> Selfwhere
S: Into<String>,
A: Into<Value>,
Create a new job of type kind
, with the given arguments.