Enum mz_persist_client::cli::inspect::Command
source · pub(crate) enum Command {
State(StateArgs),
StateRollup(StateRollupArgs),
StateRollups(StateArgs),
BlobCount(BlobArgs),
BlobBatchPart(BlobBatchPartArgs),
ConsolidatedSize(StateArgs),
UnreferencedBlobs(StateArgs),
ShardStats(BlobArgs),
BlobUsage(StateArgs),
StateDiff(StateArgs),
}
Expand description
Individual subcommands of inspect
Variants§
State(StateArgs)
Prints latest consensus state as JSON
StateRollup(StateRollupArgs)
Prints latest consensus rollup state as JSON
StateRollups(StateArgs)
Prints consensus rollup state of all known rollups as JSON
BlobCount(BlobArgs)
Prints the count and size of blobs in an environment
BlobBatchPart(BlobBatchPartArgs)
Prints blob batch part contents
ConsolidatedSize(StateArgs)
Prints consolidated and unconsolidated size, in bytes and update count
UnreferencedBlobs(StateArgs)
Prints the unreferenced blobs across all shards
ShardStats(BlobArgs)
Prints various statistics about the latest rollups for all the shards in an environment
BlobUsage(StateArgs)
Prints information about blob usage for a shard
StateDiff(StateArgs)
Prints each consensus state change as JSON. Output includes the full consensus state before and after each state transitions:
{
"previous": previous_consensus_state,
"new": new_consensus_state,
}
This is most helpfully consumed using a JSON diff tool like jd
. A useful incantation
to show only the changed fields between state transitions:
persistcli inspect state-diff --shard-id <shard> --consensus-uri <consensus_uri> |
while read diff; do
echo $diff | jq '.new' > temp_new
echo $diff | jq '.previous' > temp_previous
echo $diff | jq '.new.seqno'
jd -color -set temp_previous temp_new
done
Trait Implementations§
source§impl FromArgMatches for Command
impl FromArgMatches for Command
source§fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>
fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>
source§fn from_arg_matches_mut(
__clap_arg_matches: &mut ArgMatches,
) -> Result<Self, Error>
fn from_arg_matches_mut( __clap_arg_matches: &mut ArgMatches, ) -> Result<Self, Error>
source§fn update_from_arg_matches(
&mut self,
__clap_arg_matches: &ArgMatches,
) -> Result<(), Error>
fn update_from_arg_matches( &mut self, __clap_arg_matches: &ArgMatches, ) -> Result<(), Error>
ArgMatches
to self
.source§fn update_from_arg_matches_mut<'b>(
&mut self,
__clap_arg_matches: &mut ArgMatches,
) -> Result<(), Error>
fn update_from_arg_matches_mut<'b>( &mut self, __clap_arg_matches: &mut ArgMatches, ) -> Result<(), Error>
ArgMatches
to self
.source§impl Subcommand for Command
impl Subcommand for Command
source§fn augment_subcommands<'b>(__clap_app: Command<'b>) -> Command<'b>
fn augment_subcommands<'b>(__clap_app: Command<'b>) -> Command<'b>
source§fn augment_subcommands_for_update<'b>(__clap_app: Command<'b>) -> Command<'b>
fn augment_subcommands_for_update<'b>(__clap_app: Command<'b>) -> Command<'b>
source§fn has_subcommand(__clap_name: &str) -> bool
fn has_subcommand(__clap_name: &str) -> bool
Self
can parse a specific subcommandAuto Trait Implementations§
impl Freeze for Command
impl RefUnwindSafe for Command
impl Send for Command
impl Sync for Command
impl Unpin for Command
impl UnwindSafe for Command
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
source§impl<T> FutureExt for T
impl<T> FutureExt for T
source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
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> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request
source§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<P, R> ProtoType<R> for Pwhere
R: RustType<P>,
impl<P, R> ProtoType<R> for Pwhere
R: RustType<P>,
source§fn into_rust(self) -> Result<R, TryFromProtoError>
fn into_rust(self) -> Result<R, TryFromProtoError>
RustType::from_proto
.source§fn from_rust(rust: &R) -> P
fn from_rust(rust: &R) -> P
RustType::into_proto
.source§impl<'a, S, T> Semigroup<&'a S> for Twhere
T: Semigroup<S>,
impl<'a, S, T> Semigroup<&'a S> for Twhere
T: Semigroup<S>,
source§fn plus_equals(&mut self, rhs: &&'a S)
fn plus_equals(&mut self, rhs: &&'a S)
std::ops::AddAssign
, for types that do not implement AddAssign
.