#[non_exhaustive]pub struct VerificationArgs {Show 20 fields
pub error: Option<String>,
pub group: Uuid,
pub health_details: Option<Value>,
pub intent: String,
pub machine_id: Option<Uuid>,
pub migration: Option<MigrationArgs>,
pub observed_at: String,
pub outcome: String,
pub postgres_version: Option<String>,
pub redaction: Option<RedactionArgs>,
pub replica_healthy: bool,
pub replica_id: Uuid,
pub run_id: Option<Uuid>,
pub s3_received_payload_bytes: Option<i64>,
pub s3_received_raw_bytes: Option<i64>,
pub s3_sent_payload_bytes: Option<i64>,
pub s3_sent_raw_bytes: Option<i64>,
pub server_id: Option<Uuid>,
pub snapshot_id: Option<String>,
pub type_: String,
}Expand description
Report of a restore attempt and the health of the resulting replica.
JSON schema
{
"description": "Report of a restore attempt and the health of the resulting replica.",
"type": "object",
"required": [
"group",
"intent",
"observed_at",
"outcome",
"replica_healthy",
"replica_id",
"type"
],
"properties": {
"error": {
"description": "Human-readable error detail, when the restore failed.",
"type": [
"string",
"null"
]
},
"group": {
"description": "The server group whose backup was restored.",
"type": "string",
"format": "uuid"
},
"health_details": {
"description": "Arbitrary structured health data to record alongside the report\n(database statistics, whether indexes needed rebuilding, and so on).\nStored and displayed as-is."
},
"intent": {
"description": "The restore intent this attempt was performed under.",
"type": "string"
},
"machine_id": {
"description": "The machine whose backup was restored, from the worklist entry's\n`machine_id`.\n\nOptional only so a reporter built against the earlier shape, which knew\nthis as `server_id`, is still accepted; one of the two must be present.",
"type": [
"string",
"null"
],
"format": "uuid"
},
"migration": {
"oneOf": [
{
"type": "null"
},
{
"description": "What the migrations did, for a report under a `migrate` intent. Omit for\nevery other intent.",
"$ref": "#/components/schemas/MigrationArgs"
}
]
},
"observed_at": {
"description": "When the restore result was observed, as an RFC 3339 timestamp.",
"type": "string"
},
"outcome": {
"description": "Whether the restore succeeded (`success`) or failed (`failure`).",
"type": "string"
},
"postgres_version": {
"description": "Version of the PostgreSQL server the data was restored into, if\napplicable.",
"type": [
"string",
"null"
]
},
"redaction": {
"oneOf": [
{
"type": "null"
},
{
"description": "What the masking manifest did, for a replica that redacts. Omit for a\nreplica that doesn't.",
"$ref": "#/components/schemas/RedactionArgs"
}
]
},
"replica_healthy": {
"description": "Whether the restored database came up healthy and passed readiness\nchecks. A replica only counts as verified when the outcome is\n`success` and this is `true`.",
"type": "boolean"
},
"replica_id": {
"description": "The declaration this report concerns, taken from the worklist entry's\n`replica_id`. Required: several replicas can share one group, machine,\ntype, and intent, so a report that named no declaration could not be\nattributed to one of them.",
"type": "string",
"format": "uuid"
},
"run_id": {
"description": "This must be the run-uuid the client minted for this run.\nThe field is optional only so older clients don't break; it WILL be made\nmandatory in future.",
"type": [
"string",
"null"
],
"format": "uuid"
},
"s3_received_payload_bytes": {
"description": "Bytes of decoded object payload received from S3 during the restore.",
"type": [
"integer",
"null"
],
"format": "int64"
},
"s3_received_raw_bytes": {
"description": "Bytes of raw HTTP traffic received from S3 during the restore,\nincluding protocol overhead.",
"type": [
"integer",
"null"
],
"format": "int64"
},
"s3_sent_payload_bytes": {
"description": "Bytes of decoded object payload sent to S3 during the restore.",
"type": [
"integer",
"null"
],
"format": "int64"
},
"s3_sent_raw_bytes": {
"description": "Bytes of raw HTTP traffic sent to S3 during the restore, including\nprotocol and signing overhead. Omit when traffic was not measured.",
"type": [
"integer",
"null"
],
"format": "int64"
},
"server_id": {
"description": "The same machine under the name this field carried when a server was a\nbox and the software on it at once.\n\nDeprecated in favour of `machine_id`. A report naming only this is\naccepted and read as the machine, since a machine that predates the\nsplit took its application's id. Naming both is an error rather than a\nsilent preference, because a reporter that disagrees with itself about\nwhat it restored has not been understood.",
"deprecated": true,
"type": [
"string",
"null"
],
"format": "uuid"
},
"snapshot_id": {
"description": "Identifier of the snapshot that was restored. Omit on a failure that\nnever got as far as selecting a snapshot.",
"type": [
"string",
"null"
]
},
"type": {
"description": "The backup type that was restored (e.g. `tamanu-postgres`).",
"type": "string"
}
}
}Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.error: Option<String>Human-readable error detail, when the restore failed.
group: UuidThe server group whose backup was restored.
health_details: Option<Value>Arbitrary structured health data to record alongside the report (database statistics, whether indexes needed rebuilding, and so on). Stored and displayed as-is.
intent: StringThe restore intent this attempt was performed under.
machine_id: Option<Uuid>The machine whose backup was restored, from the worklist entry’s
machine_id.
Optional only so a reporter built against the earlier shape, which knew
this as server_id, is still accepted; one of the two must be present.
migration: Option<MigrationArgs>§observed_at: StringWhen the restore result was observed, as an RFC 3339 timestamp.
outcome: StringWhether the restore succeeded (success) or failed (failure).
postgres_version: Option<String>Version of the PostgreSQL server the data was restored into, if applicable.
redaction: Option<RedactionArgs>§replica_healthy: boolWhether the restored database came up healthy and passed readiness
checks. A replica only counts as verified when the outcome is
success and this is true.
replica_id: UuidThe declaration this report concerns, taken from the worklist entry’s
replica_id. Required: several replicas can share one group, machine,
type, and intent, so a report that named no declaration could not be
attributed to one of them.
run_id: Option<Uuid>This must be the run-uuid the client minted for this run. The field is optional only so older clients don’t break; it WILL be made mandatory in future.
s3_received_payload_bytes: Option<i64>Bytes of decoded object payload received from S3 during the restore.
s3_received_raw_bytes: Option<i64>Bytes of raw HTTP traffic received from S3 during the restore, including protocol overhead.
s3_sent_payload_bytes: Option<i64>Bytes of decoded object payload sent to S3 during the restore.
s3_sent_raw_bytes: Option<i64>Bytes of raw HTTP traffic sent to S3 during the restore, including protocol and signing overhead. Omit when traffic was not measured.
server_id: Option<Uuid>The same machine under the name this field carried when a server was a box and the software on it at once.
Deprecated in favour of machine_id. A report naming only this is
accepted and read as the machine, since a machine that predates the
split took its application’s id. Naming both is an error rather than a
silent preference, because a reporter that disagrees with itself about
what it restored has not been understood.
snapshot_id: Option<String>Identifier of the snapshot that was restored. Omit on a failure that never got as far as selecting a snapshot.
type_: StringThe backup type that was restored (e.g. tamanu-postgres).
Implementations§
Source§impl VerificationArgs
impl VerificationArgs
Sourcepub fn builder() -> VerificationArgsBuilder
pub fn builder() -> VerificationArgsBuilder
Create an instance of VerificationArgs using the builder syntax
Trait Implementations§
Source§impl Clone for VerificationArgs
impl Clone for VerificationArgs
Source§fn clone(&self) -> VerificationArgs
fn clone(&self) -> VerificationArgs
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for VerificationArgs
impl Debug for VerificationArgs
Source§impl<'de> Deserialize<'de> for VerificationArgs
impl<'de> Deserialize<'de> for VerificationArgs
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<VerificationArgs, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<VerificationArgs, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Source§impl Serialize for VerificationArgs
impl Serialize for VerificationArgs
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Auto Trait Implementations§
impl Freeze for VerificationArgs
impl RefUnwindSafe for VerificationArgs
impl Send for VerificationArgs
impl Sync for VerificationArgs
impl Unpin for VerificationArgs
impl UnsafeUnpin for VerificationArgs
impl UnwindSafe for VerificationArgs
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<D> OwoColorize for D
impl<D> OwoColorize for D
Source§fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
Source§fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
Source§fn black(&self) -> FgColorDisplay<'_, Black, Self>
fn black(&self) -> FgColorDisplay<'_, Black, Self>
Source§fn on_black(&self) -> BgColorDisplay<'_, Black, Self>
fn on_black(&self) -> BgColorDisplay<'_, Black, Self>
Source§fn red(&self) -> FgColorDisplay<'_, Red, Self>
fn red(&self) -> FgColorDisplay<'_, Red, Self>
Source§fn on_red(&self) -> BgColorDisplay<'_, Red, Self>
fn on_red(&self) -> BgColorDisplay<'_, Red, Self>
Source§fn green(&self) -> FgColorDisplay<'_, Green, Self>
fn green(&self) -> FgColorDisplay<'_, Green, Self>
Source§fn on_green(&self) -> BgColorDisplay<'_, Green, Self>
fn on_green(&self) -> BgColorDisplay<'_, Green, Self>
Source§fn yellow(&self) -> FgColorDisplay<'_, Yellow, Self>
fn yellow(&self) -> FgColorDisplay<'_, Yellow, Self>
Source§fn on_yellow(&self) -> BgColorDisplay<'_, Yellow, Self>
fn on_yellow(&self) -> BgColorDisplay<'_, Yellow, Self>
Source§fn blue(&self) -> FgColorDisplay<'_, Blue, Self>
fn blue(&self) -> FgColorDisplay<'_, Blue, Self>
Source§fn on_blue(&self) -> BgColorDisplay<'_, Blue, Self>
fn on_blue(&self) -> BgColorDisplay<'_, Blue, Self>
Source§fn magenta(&self) -> FgColorDisplay<'_, Magenta, Self>
fn magenta(&self) -> FgColorDisplay<'_, Magenta, Self>
Source§fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
Source§fn purple(&self) -> FgColorDisplay<'_, Magenta, Self>
fn purple(&self) -> FgColorDisplay<'_, Magenta, Self>
Source§fn on_purple(&self) -> BgColorDisplay<'_, Magenta, Self>
fn on_purple(&self) -> BgColorDisplay<'_, Magenta, Self>
Source§fn cyan(&self) -> FgColorDisplay<'_, Cyan, Self>
fn cyan(&self) -> FgColorDisplay<'_, Cyan, Self>
Source§fn on_cyan(&self) -> BgColorDisplay<'_, Cyan, Self>
fn on_cyan(&self) -> BgColorDisplay<'_, Cyan, Self>
Source§fn white(&self) -> FgColorDisplay<'_, White, Self>
fn white(&self) -> FgColorDisplay<'_, White, Self>
Source§fn on_white(&self) -> BgColorDisplay<'_, White, Self>
fn on_white(&self) -> BgColorDisplay<'_, White, Self>
Source§fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
Source§fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
Source§fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
Source§fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
Source§fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
Source§fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
Source§fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
Source§fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
Source§fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
Source§fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
Source§fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
Source§fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
Source§fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
Source§fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
Source§fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
Source§fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
Source§fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
Source§fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
Source§fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
Source§fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
Source§fn bold(&self) -> BoldDisplay<'_, Self>
fn bold(&self) -> BoldDisplay<'_, Self>
Source§fn dimmed(&self) -> DimDisplay<'_, Self>
fn dimmed(&self) -> DimDisplay<'_, Self>
Source§fn italic(&self) -> ItalicDisplay<'_, Self>
fn italic(&self) -> ItalicDisplay<'_, Self>
Source§fn underline(&self) -> UnderlineDisplay<'_, Self>
fn underline(&self) -> UnderlineDisplay<'_, Self>
Source§fn blink(&self) -> BlinkDisplay<'_, Self>
fn blink(&self) -> BlinkDisplay<'_, Self>
Source§fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
Source§fn reversed(&self) -> ReversedDisplay<'_, Self>
fn reversed(&self) -> ReversedDisplay<'_, Self>
Source§fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
Source§fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
OwoColorize::fg or
a color-specific method, such as OwoColorize::green, Read moreSource§fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
OwoColorize::bg or
a color-specific method, such as OwoColorize::on_yellow, Read more