// Copyright 2024 RustFS Team // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. use std::time::Duration; /// Environment variable key for the global default metrics interval (seconds). pub const ENV_DEFAULT_METRICS_INTERVAL: &str = "RUSTFS_METRICS_DEFAULT_INTERVAL_SEC"; /// Default interval for metrics collection if not specified otherwise. pub const DEFAULT_METRICS_INTERVAL: Duration = Duration::from_secs(60); /// Environment variable key for cluster metrics interval (seconds). pub const ENV_CLUSTER_METRICS_INTERVAL: &str = "RUSTFS_METRICS_CLUSTER_INTERVAL_SEC"; /// Default interval for collecting cluster-wide metrics (capacity, object counts). pub const DEFAULT_CLUSTER_METRICS_INTERVAL: Duration = Duration::from_secs(60); /// Environment variable key for bucket metrics interval (seconds). pub const ENV_BUCKET_METRICS_INTERVAL: &str = "RUSTFS_METRICS_BUCKET_INTERVAL_SEC"; /// Default interval for collecting per-bucket metrics (usage, quotas). /// This can be expensive if there are many buckets, so a longer interval is recommended. pub const DEFAULT_BUCKET_METRICS_INTERVAL: Duration = Duration::from_secs(300); /// Environment variable key for node metrics interval (seconds). pub const ENV_NODE_METRICS_INTERVAL: &str = "RUSTFS_METRICS_NODE_INTERVAL_SEC"; /// Default interval for collecting node/disk metrics. pub const DEFAULT_NODE_METRICS_INTERVAL: Duration = Duration::from_secs(60); /// Environment variable key for resource metrics interval (seconds). pub const ENV_RESOURCE_METRICS_INTERVAL: &str = "RUSTFS_METRICS_RESOURCE_INTERVAL_SEC"; /// Default interval for collecting system resource metrics (CPU, memory). pub const DEFAULT_RESOURCE_METRICS_INTERVAL: Duration = Duration::from_secs(15); /// Environment variable key for audit target metrics interval (seconds). pub const ENV_AUDIT_METRICS_INTERVAL: &str = "RUSTFS_METRICS_AUDIT_INTERVAL_SEC"; /// Default interval for collecting audit target delivery metrics. pub const DEFAULT_AUDIT_METRICS_INTERVAL: Duration = Duration::from_secs(15); /// Environment variable key for notification metrics interval (seconds). pub const ENV_NOTIFICATION_METRICS_INTERVAL: &str = "RUSTFS_METRICS_NOTIFICATION_INTERVAL_SEC"; /// Default interval for collecting notification delivery metrics. pub const DEFAULT_NOTIFICATION_METRICS_INTERVAL: Duration = Duration::from_secs(15); /// Environment variable key for replication bandwidth metrics interval (seconds). pub const ENV_BUCKET_REPLICATION_BANDWIDTH_METRICS_INTERVAL: &str = "RUSTFS_METRICS_BUCKET_REPLICATION_BANDWIDTH_INTERVAL_SEC"; /// Default interval for collecting replication bandwidth metrics. pub const DEFAULT_BUCKET_REPLICATION_BANDWIDTH_METRICS_INTERVAL: Duration = Duration::from_secs(30);