Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Option ¶
type Option func(*options) error
func WithCommonAttributes ¶ added in v0.0.2
func WithFdbApiVersion ¶
func WithFdbClusterFile ¶
func WithHttpListenAddr ¶
type Status ¶
type Status struct { Client struct { ClusterFile struct { Path string `json:"path" fdbmeter:"skip"` UpToDate bool `json:"up_to_date"` } `json:"cluster_file"` Coordinators struct { Coordinators []struct { Address string `json:"address"` Protocol string `json:"protocol"` Reachable bool `json:"reachable"` } `json:"coordinators"` QuorumReachable bool `json:"quorum_reachable"` } `json:"coordinators"` DatabaseStatus struct { Available bool `json:"available"` Healthy bool `json:"healthy"` } `json:"database_status"` Messages []any `json:"messages"` Timestamp float64 `json:"timestamp"` } `json:"client"` Cluster struct { ActivePrimaryDc string `json:"active_primary_dc"` ActiveTssCount int `json:"active_tss_count"` BounceImpact struct { CanCleanBounce bool `json:"can_clean_bounce"` } `json:"bounce_impact"` Clients struct { Count int `json:"count"` SupportedVersions []struct { ClientVersion string `json:"client_version"` ConnectedClients []struct { Address string `json:"address"` LogGroup string `json:"log_group"` } `json:"connected_clients"` Count int `json:"count"` MaxProtocolClients []struct { Address string `json:"address"` LogGroup string `json:"log_group"` } `json:"max_protocol_clients"` MaxProtocolCount int `json:"max_protocol_count"` ProtocolVersion string `json:"protocol_version"` SourceVersion string `json:"source_version"` } `json:"supported_versions"` } `json:"clients"` ClusterControllerTimestamp float64 `json:"cluster_controller_timestamp"` Configuration struct { BackupWorkerEnabled int `json:"backup_worker_enabled"` BlobGranulesEnabled int `json:"blob_granules_enabled"` CommitProxies int `json:"commit_proxies"` CoordinatorsCount int `json:"coordinators_count"` ExcludedServers []any `json:"excluded_servers"` GrvProxies int `json:"grv_proxies"` LogRouters int `json:"log_routers"` LogSpill int `json:"log_spill"` Logs int `json:"logs"` PerpetualStorageWiggle int `json:"perpetual_storage_wiggle"` PerpetualStorageWiggleLocality string `json:"perpetual_storage_wiggle_locality"` Proxies int `json:"proxies"` RedundancyMode string `json:"redundancy_mode"` RemoteLogs int `json:"remote_logs"` Resolvers int `json:"resolvers"` StorageEngine string `json:"storage_engine"` StorageMigrationType string `json:"storage_migration_type"` TenantMode string `json:"tenant_mode"` UsableRegions int `json:"usable_regions"` } `json:"configuration"` ConnectionString string `json:"connection_string" fdbmeter:"skip"` Data struct { AveragePartitionSizeBytes int `json:"average_partition_size_bytes"` LeastOperatingSpaceBytesLogServer int64 `json:"least_operating_space_bytes_log_server"` LeastOperatingSpaceBytesStorageServer int64 `json:"least_operating_space_bytes_storage_server"` MovingData struct { HighestPriority int `json:"highest_priority"` InFlightBytes int64 `json:"in_flight_bytes"` InQueueBytes int64 `json:"in_queue_bytes"` TotalWrittenBytes int64 `json:"total_written_bytes"` } `json:"moving_data"` PartitionsCount int `json:"partitions_count"` State struct { Description string `json:"description"` Healthy bool `json:"healthy"` MinReplicasRemaining int `json:"min_replicas_remaining"` Name string `json:"name"` } `json:"state"` SystemKvSizeBytes int `json:"system_kv_size_bytes"` TeamTrackers []struct { InFlightBytes int64 `json:"in_flight_bytes"` Primary bool `json:"primary"` State struct { Description string `json:"description"` Healthy bool `json:"healthy"` MinReplicasRemaining int `json:"min_replicas_remaining"` Name string `json:"name"` } `json:"state"` UnhealthyServers int `json:"unhealthy_servers"` } `json:"team_trackers"` TotalDiskUsedBytes int64 `json:"total_disk_used_bytes"` TotalKvSizeBytes int64 `json:"total_kv_size_bytes"` } `json:"data"` DatabaseAvailable bool `json:"database_available"` DatabaseLockState struct { Locked bool `json:"locked"` } `json:"database_lock_state"` DatacenterLag struct { Seconds int `json:"seconds"` Versions int `json:"versions"` } `json:"datacenter_lag"` DegradedProcesses int `json:"degraded_processes"` FaultTolerance struct { MaxZoneFailuresWithoutLosingAvailability int `json:"max_zone_failures_without_losing_availability"` MaxZoneFailuresWithoutLosingData int `json:"max_zone_failures_without_losing_data"` } `json:"fault_tolerance"` FullReplication bool `json:"full_replication"` Generation int `json:"generation"` IncompatibleConnections []any `json:"incompatible_connections"` LatencyProbe struct { CommitSeconds float64 `json:"commit_seconds"` ImmediatePriorityTransactionStartSeconds float64 `json:"immediate_priority_transaction_start_seconds"` ReadSeconds float64 `json:"read_seconds"` TransactionStartSeconds float64 `json:"transaction_start_seconds"` } `json:"latency_probe"` Layers struct { Error string `json:"_error"` Valid bool `json:"_valid"` } `json:"layers"` Logs []struct { BeginVersion int64 `json:"begin_version"` Current bool `json:"current"` Epoch int `json:"epoch"` LogFaultTolerance int `json:"log_fault_tolerance"` LogInterfaces []struct { Address string `json:"address"` Healthy bool `json:"healthy"` Id string `json:"id"` } `json:"log_interfaces"` LogReplicationFactor int `json:"log_replication_factor"` LogWriteAntiQuorum int `json:"log_write_anti_quorum"` PossiblyLosingData bool `json:"possibly_losing_data"` } `json:"logs"` Machines map[string]struct { Address string `json:"address"` ContributingWorkers int `json:"contributing_workers"` Cpu struct { LogicalCoreUtilization float64 `json:"logical_core_utilization"` } `json:"cpu"` Excluded bool `json:"excluded"` Locality struct { DnsName string `json:"dns_name"` InstanceId string `json:"instance_id"` Machineid string `json:"machineid"` Processid string `json:"processid"` Zoneid string `json:"zoneid"` } `json:"locality"` MachineId string `json:"machine_id"` Memory struct { CommittedBytes int `json:"committed_bytes"` FreeBytes int64 `json:"free_bytes"` TotalBytes int64 `json:"total_bytes"` } `json:"memory"` Network struct { MegabitsReceived struct { Hz float64 `json:"hz"` } `json:"megabits_received"` MegabitsSent struct { Hz float64 `json:"hz"` } `json:"megabits_sent"` TcpSegmentsRetransmitted struct { Hz float64 `json:"hz"` } `json:"tcp_segments_retransmitted"` } `json:"network"` } `json:"machines" fdbmeter:"key=name"` Messages []struct { Description string `json:"description"` Name string `json:"name"` } `json:"messages"` PageCache struct { LogHitRate int `json:"log_hit_rate"` StorageHitRate int `json:"storage_hit_rate"` } `json:"page_cache"` Processes map[string]struct { Address string `json:"address"` ClassSource string `json:"class_source"` ClassType string `json:"class_type"` CommandLine string `json:"command_line" fdbmeter:"skip"` Cpu struct { UsageCores float64 `json:"usage_cores"` } `json:"cpu"` Disk struct { Busy float64 `json:"busy"` FreeBytes int64 `json:"free_bytes"` Reads struct { Counter int `json:"counter"` Hz float64 `json:"hz"` Sectors float64 `json:"sectors"` } `json:"reads"` TotalBytes int64 `json:"total_bytes"` Writes struct { Counter int `json:"counter"` Hz float64 `json:"hz"` Sectors float64 `json:"sectors"` } `json:"writes"` } `json:"disk"` Excluded bool `json:"excluded"` FaultDomain string `json:"fault_domain"` Locality struct { DnsName string `json:"dns_name"` InstanceId string `json:"instance_id"` Machineid string `json:"machineid"` ProcessId string `json:"process_id"` Processid string `json:"processid"` Zoneid string `json:"zoneid"` } `json:"locality"` MachineId string `json:"machine_id"` Memory struct { AvailableBytes int64 `json:"available_bytes"` LimitBytes int64 `json:"limit_bytes"` RssBytes int64 `json:"rss_bytes"` UnusedAllocatedMemory int `json:"unused_allocated_memory"` UsedBytes int64 `json:"used_bytes"` } `json:"memory"` Messages []any `json:"messages"` Network struct { ConnectionErrors struct { Hz float64 `json:"hz"` } `json:"connection_errors"` ConnectionsClosed struct { Hz float64 `json:"hz"` } `json:"connections_closed"` ConnectionsEstablished struct { Hz float64 `json:"hz"` } `json:"connections_established"` CurrentConnections int `json:"current_connections"` MegabitsReceived struct { Hz float64 `json:"hz"` } `json:"megabits_received"` MegabitsSent struct { Hz float64 `json:"hz"` } `json:"megabits_sent"` TlsPolicyFailures struct { Hz float64 `json:"hz"` } `json:"tls_policy_failures"` } `json:"network"` Roles []struct { BytesQueried struct { Counter int64 `json:"counter"` Hz float64 `json:"hz"` Roughness float64 `json:"roughness"` } `json:"bytes_queried"` DataLag struct { Seconds float64 `json:"seconds"` Versions int `json:"versions"` } `json:"data_lag"` DataVersion int64 `json:"data_version"` DurabilityLag struct { Seconds float64 `json:"seconds"` Versions int `json:"versions"` } `json:"durability_lag"` DurableBytes struct { Counter int64 `json:"counter"` Hz float64 `json:"hz"` Roughness float64 `json:"roughness"` } `json:"durable_bytes"` DurableVersion int64 `json:"durable_version"` FetchedVersions struct { Counter int64 `json:"counter"` Hz float64 `json:"hz"` Roughness float64 `json:"roughness"` } `json:"fetched_versions"` FetchesFromLogs struct { Counter int `json:"counter"` Hz float64 `json:"hz"` Roughness float64 `json:"roughness"` } `json:"fetches_from_logs"` FinishedQueries struct { Counter int `json:"counter"` Hz float64 `json:"hz"` Roughness float64 `json:"roughness"` } `json:"finished_queries"` Id string `json:"id"` InputBytes struct { Counter int64 `json:"counter"` Hz float64 `json:"hz"` Roughness float64 `json:"roughness"` } `json:"input_bytes"` KeysQueried struct { Counter int `json:"counter"` Hz float64 `json:"hz"` Roughness float64 `json:"roughness"` } `json:"keys_queried"` KvstoreAvailableBytes int64 `json:"kvstore_available_bytes"` KvstoreFreeBytes int64 `json:"kvstore_free_bytes"` KvstoreInlineKeys int `json:"kvstore_inline_keys"` KvstoreTotalBytes int64 `json:"kvstore_total_bytes"` KvstoreTotalNodes int `json:"kvstore_total_nodes"` KvstoreTotalSize int `json:"kvstore_total_size"` KvstoreUsedBytes int64 `json:"kvstore_used_bytes"` LocalRate int `json:"local_rate"` LowPriorityQueries struct { Counter int `json:"counter"` Hz float64 `json:"hz"` Roughness float64 `json:"roughness"` } `json:"low_priority_queries"` MutationBytes struct { Counter int64 `json:"counter"` Hz float64 `json:"hz"` Roughness float64 `json:"roughness"` } `json:"mutation_bytes"` Mutations struct { Counter int `json:"counter"` Hz float64 `json:"hz"` Roughness float64 `json:"roughness"` } `json:"mutations"` QueryQueueMax int `json:"query_queue_max"` ReadLatencyStatistics struct { Count int `json:"count"` Max float64 `json:"max"` Mean float64 `json:"mean"` Median float64 `json:"median"` Min float64 `json:"min"` P25 float64 `json:"p25"` P90 float64 `json:"p90"` P95 float64 `json:"p95"` P99 float64 `json:"p99"` P999 float64 `json:"p99.9"` } `json:"read_latency_statistics"` Role string `json:"role"` StorageMetadata struct { CreatedTimeDatetime string `json:"created_time_datetime"` CreatedTimeTimestamp float64 `json:"created_time_timestamp"` } `json:"storage_metadata"` StoredBytes int64 `json:"stored_bytes"` TotalQueries struct { Counter int `json:"counter"` Hz float64 `json:"hz"` Roughness float64 `json:"roughness"` } `json:"total_queries"` } `json:"roles"` RunLoopBusy float64 `json:"run_loop_busy"` UptimeSeconds float64 `json:"uptime_seconds"` Version string `json:"version"` } `json:"processes" fdbmeter:"key=process_id"` ProtocolVersion string `json:"protocol_version"` Qos struct { BatchPerformanceLimitedBy struct { Description string `json:"description"` Name string `json:"name"` ReasonId int `json:"reason_id"` ReasonServerId string `json:"reason_server_id"` } `json:"batch_performance_limited_by"` BatchReleasedTransactionsPerSecond float64 `json:"batch_released_transactions_per_second"` BatchTransactionsPerSecondLimit float64 `json:"batch_transactions_per_second_limit"` LimitingDataLagStorageServer struct { Seconds float64 `json:"seconds"` Versions int `json:"versions"` } `json:"limiting_data_lag_storage_server"` LimitingDurabilityLagStorageServer struct { Seconds float64 `json:"seconds"` Versions int `json:"versions"` } `json:"limiting_durability_lag_storage_server"` LimitingQueueBytesStorageServer int `json:"limiting_queue_bytes_storage_server"` PerformanceLimitedBy struct { Description string `json:"description"` Name string `json:"name"` ReasonId int `json:"reason_id"` } `json:"performance_limited_by"` ReleasedTransactionsPerSecond float64 `json:"released_transactions_per_second"` ThrottledTags struct { Auto struct { BusyRead int `json:"busy_read"` BusyWrite int `json:"busy_write"` Count int `json:"count"` RecommendedOnly int `json:"recommended_only"` } `json:"auto"` Manual struct { Count int `json:"count"` } `json:"manual"` } `json:"throttled_tags"` TransactionsPerSecondLimit float64 `json:"transactions_per_second_limit"` WorstDataLagStorageServer struct { Seconds float64 `json:"seconds"` Versions int `json:"versions"` } `json:"worst_data_lag_storage_server"` WorstDurabilityLagStorageServer struct { Seconds float64 `json:"seconds"` Versions int `json:"versions"` } `json:"worst_durability_lag_storage_server"` WorstQueueBytesLogServer int `json:"worst_queue_bytes_log_server"` WorstQueueBytesStorageServer int `json:"worst_queue_bytes_storage_server"` } `json:"qos"` RecoveryState struct { ActiveGenerations int `json:"active_generations"` Description string `json:"description"` Name string `json:"name"` SecondsSinceLastRecovered float64 `json:"seconds_since_last_recovered"` } `json:"recovery_state"` Workload struct { Bytes struct { Read struct { Counter int64 `json:"counter"` Hz float64 `json:"hz"` Roughness float64 `json:"roughness"` } `json:"read"` Written struct { Counter int64 `json:"counter"` Hz float64 `json:"hz"` Roughness float64 `json:"roughness"` } `json:"written"` } `json:"bytes"` Keys struct { Read struct { Counter int64 `json:"counter"` Hz float64 `json:"hz"` Roughness float64 `json:"roughness"` } `json:"read"` } `json:"keys"` Operations struct { LocationRequests struct { Counter int `json:"counter"` Hz float64 `json:"hz"` Roughness float64 `json:"roughness"` } `json:"location_requests"` LowPriorityReads struct { Counter int `json:"counter"` Hz float64 `json:"hz"` Roughness float64 `json:"roughness"` } `json:"low_priority_reads"` MemoryErrors struct { Counter int `json:"counter"` Hz float64 `json:"hz"` Roughness float64 `json:"roughness"` } `json:"memory_errors"` ReadRequests struct { Counter int `json:"counter"` Hz float64 `json:"hz"` Roughness float64 `json:"roughness"` } `json:"read_requests"` Reads struct { Counter int `json:"counter"` Hz float64 `json:"hz"` Roughness float64 `json:"roughness"` } `json:"reads"` Writes struct { Counter int64 `json:"counter"` Hz float64 `json:"hz"` Roughness float64 `json:"roughness"` } `json:"writes"` } `json:"operations"` Transactions struct { Committed struct { Counter int `json:"counter"` Hz float64 `json:"hz"` Roughness float64 `json:"roughness"` } `json:"committed"` Conflicted struct { Counter int `json:"counter"` Hz float64 `json:"hz"` Roughness float64 `json:"roughness"` } `json:"conflicted"` RejectedForQueuedTooLong struct { Counter int `json:"counter"` Hz float64 `json:"hz"` Roughness float64 `json:"roughness"` } `json:"rejected_for_queued_too_long"` Started struct { Counter int `json:"counter"` Hz float64 `json:"hz"` Roughness float64 `json:"roughness"` } `json:"started"` StartedBatchPriority struct { Counter int `json:"counter"` Hz float64 `json:"hz"` Roughness float64 `json:"roughness"` } `json:"started_batch_priority"` StartedDefaultPriority struct { Counter int `json:"counter"` Hz float64 `json:"hz"` Roughness float64 `json:"roughness"` } `json:"started_default_priority"` StartedImmediatePriority struct { Counter int `json:"counter"` Hz float64 `json:"hz"` Roughness float64 `json:"roughness"` } `json:"started_immediate_priority"` } `json:"transactions"` } `json:"workload"` } `json:"cluster"` }
Click to show internal directories.
Click to hide internal directories.