Struct faktory::Job
[−]
[src]
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 backtrace: Option<usize>, pub custom: HashMap<String, Value>, // some fields omitted }
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.
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.
Methods
impl Job
[src]
fn new<S, A>(kind: S, args: Vec<A>) -> Self where
S: ToString,
A: Into<Value>,
[src]
S: ToString,
A: Into<Value>,
Create a new job of type kind
, with the given arguments.
fn kind(&self) -> &str
[src]
This job's type.
fn args(&self) -> &[Value]
[src]
The arguments provided for this job.