use std::sync::atomic::AtomicU64;
use std::sync::atomic::Ordering::Relaxed;
use std::sync::Arc;
#[rustfmt::skip]
#[derive(Default)]
pub(crate) struct Inner {
pub(crate) delete_op_count: AtomicU64,
pub(crate) read_op_count: AtomicU64,
pub(crate) read_op_bytes_sent: AtomicU64,
pub(crate) read_op_bytes_discarded: AtomicU64,
pub(crate) write_op_count: AtomicU64,
pub(crate) write_op_bytes_persisted: AtomicU64,
pub(crate) write_op_bytes_padding: AtomicU64,
pub(crate) allocated_bytes: AtomicU64,
pub(crate) heap_object_data_bytes: AtomicU64, pub(crate) object_count: AtomicU64,
pub(crate) log_buffer_write_entry_count: AtomicU64,
pub(crate) log_buffer_write_entry_data_bytes: AtomicU64,
pub(crate) log_buffer_delete_entry_count: AtomicU64,
pub(crate) log_buffer_virtual_head: AtomicU64,
pub(crate) log_buffer_virtual_tail: AtomicU64,
pub(crate) log_buffer_commit_count: AtomicU64,
pub(crate) log_buffer_commit_entry_count: AtomicU64,
pub(crate) log_buffer_commit_object_grouping_us: AtomicU64, pub(crate) log_buffer_commit_object_heap_move_count: AtomicU64, pub(crate) log_buffer_commit_object_heap_move_bytes: AtomicU64,
pub(crate) log_buffer_commit_object_heap_move_write_us: AtomicU64, pub(crate) log_buffer_commit_bundle_committed_count: AtomicU64, pub(crate) log_buffer_commit_bundle_count: AtomicU64,
pub(crate) log_buffer_commit_bundle_read_us: AtomicU64, pub(crate) log_buffer_commit_bundle_write_us: AtomicU64, pub(crate) log_buffer_commit_bundles_update_us: AtomicU64,
pub(crate) log_buffer_flush_entry_count: AtomicU64, pub(crate) log_buffer_flush_count: AtomicU64, pub(crate) log_buffer_flush_4k_count: AtomicU64, pub(crate) log_buffer_flush_64k_count: AtomicU64, pub(crate) log_buffer_flush_1m_count: AtomicU64, pub(crate) log_buffer_flush_8m_count: AtomicU64, pub(crate) log_buffer_flush_data_bytes: AtomicU64,
pub(crate) log_buffer_flush_padding_bytes: AtomicU64,
pub(crate) log_buffer_flush_write_us: AtomicU64, pub(crate) log_buffer_flush_total_us: AtomicU64, pub(crate) log_buffer_flush_state_count: AtomicU64,
pub(crate) uring_submission_count: AtomicU64,
pub(crate) uring_read_request_count: AtomicU64,
pub(crate) uring_read_request_bytes: AtomicU64,
pub(crate) uring_read_request_us: AtomicU64,
pub(crate) uring_write_request_count: AtomicU64,
pub(crate) uring_write_request_bytes: AtomicU64,
pub(crate) uring_write_request_us: AtomicU64,
pub(crate) uring_sync_request_count: AtomicU64,
pub(crate) uring_sync_request_us: AtomicU64,
}
#[derive(Clone, Default)]
pub struct BlobdMetrics(pub(crate) Arc<Inner>);
#[rustfmt::skip]
impl BlobdMetrics {
pub fn delete_op_count(&self) -> u64 { self.0.delete_op_count.load(Relaxed) }
pub fn read_op_count(&self) -> u64 { self.0.read_op_count.load(Relaxed) }
pub fn read_op_bytes_sent(&self) -> u64 { self.0.read_op_bytes_sent.load(Relaxed) }
pub fn read_op_bytes_discarded(&self) -> u64 { self.0.read_op_bytes_discarded.load(Relaxed) }
pub fn write_op_count(&self) -> u64 { self.0.write_op_count.load(Relaxed) }
pub fn write_op_bytes_persisted(&self) -> u64 { self.0.write_op_bytes_persisted.load(Relaxed) }
pub fn write_op_bytes_padding(&self) -> u64 { self.0.write_op_bytes_padding.load(Relaxed) }
pub fn allocated_bytes(&self) -> u64 { self.0.allocated_bytes.load(Relaxed) }
pub fn heap_object_data_bytes(&self) -> u64 { self.0.heap_object_data_bytes.load(Relaxed) }
pub fn object_count(&self) -> u64 { self.0.object_count.load(Relaxed) }
pub fn log_buffer_write_entry_count(&self) -> u64 { self.0.log_buffer_write_entry_count.load(Relaxed) }
pub fn log_buffer_write_entry_data_bytes(&self) -> u64 { self.0.log_buffer_write_entry_data_bytes.load(Relaxed) }
pub fn log_buffer_delete_entry_count(&self) -> u64 { self.0.log_buffer_delete_entry_count.load(Relaxed) }
pub fn log_buffer_virtual_head(&self) -> u64 { self.0.log_buffer_virtual_head.load(Relaxed) }
pub fn log_buffer_virtual_tail(&self) -> u64 { self.0.log_buffer_virtual_tail.load(Relaxed) }
pub fn log_buffer_commit_count(&self) -> u64 { self.0.log_buffer_commit_count.load(Relaxed) }
pub fn log_buffer_commit_entry_count(&self) -> u64 { self.0.log_buffer_commit_entry_count.load(Relaxed) }
pub fn log_buffer_commit_object_grouping_us(&self) -> u64 { self.0.log_buffer_commit_object_grouping_us.load(Relaxed) }
pub fn log_buffer_commit_object_heap_move_count(&self) -> u64 { self.0.log_buffer_commit_object_heap_move_count.load(Relaxed) }
pub fn log_buffer_commit_object_heap_move_bytes(&self) -> u64 { self.0.log_buffer_commit_object_heap_move_bytes.load(Relaxed) }
pub fn log_buffer_commit_object_heap_move_write_us(&self) -> u64 { self.0.log_buffer_commit_object_heap_move_write_us.load(Relaxed) }
pub fn log_buffer_commit_bundle_committed_count(&self) -> u64 { self.0.log_buffer_commit_bundle_committed_count.load(Relaxed) }
pub fn log_buffer_commit_bundle_count(&self) -> u64 { self.0.log_buffer_commit_bundle_count.load(Relaxed) }
pub fn log_buffer_commit_bundle_read_us(&self) -> u64 { self.0.log_buffer_commit_bundle_read_us.load(Relaxed) }
pub fn log_buffer_commit_bundle_write_us(&self) -> u64 { self.0.log_buffer_commit_bundle_write_us.load(Relaxed) }
pub fn log_buffer_commit_bundles_update_us(&self) -> u64 { self.0.log_buffer_commit_bundles_update_us.load(Relaxed) }
pub fn log_buffer_flush_entry_count(&self) -> u64 { self.0.log_buffer_flush_entry_count.load(Relaxed) }
pub fn log_buffer_flush_count(&self) -> u64 { self.0.log_buffer_flush_count.load(Relaxed) }
pub fn log_buffer_flush_4k_count(&self) -> u64 { self.0.log_buffer_flush_4k_count.load(Relaxed) }
pub fn log_buffer_flush_64k_count(&self) -> u64 { self.0.log_buffer_flush_64k_count.load(Relaxed) }
pub fn log_buffer_flush_1m_count(&self) -> u64 { self.0.log_buffer_flush_1m_count.load(Relaxed) }
pub fn log_buffer_flush_8m_count(&self) -> u64 { self.0.log_buffer_flush_8m_count.load(Relaxed) }
pub fn log_buffer_flush_data_bytes(&self) -> u64 { self.0.log_buffer_flush_data_bytes.load(Relaxed) }
pub fn log_buffer_flush_padding_bytes(&self) -> u64 { self.0.log_buffer_flush_padding_bytes.load(Relaxed) }
pub fn log_buffer_flush_write_us(&self) -> u64 { self.0.log_buffer_flush_write_us.load(Relaxed) }
pub fn log_buffer_flush_total_us(&self) -> u64 { self.0.log_buffer_flush_total_us.load(Relaxed) }
pub fn log_buffer_flush_state_count(&self) -> u64 { self.0.log_buffer_flush_state_count.load(Relaxed) }
pub fn uring_submission_count(&self) -> u64 { self.0.uring_submission_count.load(Relaxed) }
pub fn uring_read_request_count(&self) -> u64 { self.0.uring_read_request_count.load(Relaxed) }
pub fn uring_read_request_bytes(&self) -> u64 { self.0.uring_read_request_bytes.load(Relaxed) }
pub fn uring_read_request_us(&self) -> u64 { self.0.uring_read_request_us.load(Relaxed) }
pub fn uring_write_request_count(&self) -> u64 { self.0.uring_write_request_count.load(Relaxed) }
pub fn uring_write_request_bytes(&self) -> u64 { self.0.uring_write_request_bytes.load(Relaxed) }
pub fn uring_write_request_us(&self) -> u64 { self.0.uring_write_request_us.load(Relaxed) }
pub fn uring_sync_request_count(&self) -> u64 { self.0.uring_sync_request_count.load(Relaxed) }
pub fn uring_sync_request_us(&self) -> u64 { self.0.uring_sync_request_us.load(Relaxed) }
}