#[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 more