remove proxmox-rrd-api-types crate, s/RRDTimeFrameResolution/RRDTimeFrame/

Because the types used inside the RRD have other requirements
than the API types:

- other serialization format
- the API may not support all RRD features

Signed-off-by: Dietmar Maurer <dietmar@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
This commit is contained in:
Dietmar Maurer
2021-10-13 10:24:44 +02:00
committed by Thomas Lamprecht
parent 426dda0730
commit c68fa58a59
11 changed files with 47 additions and 67 deletions

View File

@ -28,7 +28,7 @@ use pxar::EntryKind;
use pbs_api_types::{ Authid, BackupContent, Counts, CryptMode,
DataStoreListItem, GarbageCollectionStatus, GroupListItem,
SnapshotListItem, SnapshotVerifyState, PruneOptions,
DataStoreStatus, RRDMode, RRDTimeFrameResolution,
DataStoreStatus, RRDMode, RRDTimeFrame,
BACKUP_ARCHIVE_NAME_SCHEMA, BACKUP_ID_SCHEMA, BACKUP_TIME_SCHEMA,
BACKUP_TYPE_SCHEMA, DATASTORE_SCHEMA,
IGNORE_VERIFIED_BACKUPS_SCHEMA, UPID_SCHEMA,
@ -1537,7 +1537,7 @@ pub fn pxar_file_download(
schema: DATASTORE_SCHEMA,
},
timeframe: {
type: RRDTimeFrameResolution,
type: RRDTimeFrame,
},
cf: {
type: RRDMode,
@ -1551,7 +1551,7 @@ pub fn pxar_file_download(
/// Read datastore stats
pub fn get_rrd_stats(
store: String,
timeframe: RRDTimeFrameResolution,
timeframe: RRDTimeFrame,
cf: RRDMode,
_param: Value,
) -> Result<Value, Error> {

View File

@ -6,7 +6,7 @@ use proxmox_router::{Permission, Router};
use proxmox_schema::api;
use pbs_api_types::{
NODE_SCHEMA, RRDMode, RRDTimeFrameResolution, PRIV_SYS_AUDIT,
NODE_SCHEMA, RRDMode, RRDTimeFrame, PRIV_SYS_AUDIT,
};
use crate::extract_rrd_data;
@ -14,7 +14,7 @@ use crate::extract_rrd_data;
pub fn create_value_from_rrd(
basedir: &str,
list: &[&str],
timeframe: RRDTimeFrameResolution,
timeframe: RRDTimeFrame,
mode: RRDMode,
) -> Result<Value, Error> {
@ -63,7 +63,7 @@ pub fn create_value_from_rrd(
schema: NODE_SCHEMA,
},
timeframe: {
type: RRDTimeFrameResolution,
type: RRDTimeFrame,
},
cf: {
type: RRDMode,
@ -76,7 +76,7 @@ pub fn create_value_from_rrd(
)]
/// Read node stats
fn get_node_stats(
timeframe: RRDTimeFrameResolution,
timeframe: RRDTimeFrame,
cf: RRDMode,
_param: Value,
) -> Result<Value, Error> {

View File

@ -14,7 +14,7 @@ use proxmox_router::{
use proxmox_router::list_subdirs_api_method;
use pbs_api_types::{
Authid, DATASTORE_SCHEMA, RRDMode, RRDTimeFrameResolution,
Authid, DATASTORE_SCHEMA, RRDMode, RRDTimeFrame,
PRIV_DATASTORE_AUDIT, PRIV_DATASTORE_BACKUP,
};
@ -125,7 +125,7 @@ pub fn datastore_status(
let get_rrd = |what: &str| extract_rrd_data(
&rrd_dir,
what,
RRDTimeFrameResolution::Month,
RRDTimeFrame::Month,
RRDMode::Average,
);

View File

@ -10,7 +10,7 @@ use anyhow::{format_err, Error};
use proxmox::tools::fs::CreateOptions;
use pbs_api_types::{RRDMode, RRDTimeFrameResolution};
use pbs_api_types::{RRDMode, RRDTimeFrame};
use pbs_buildcfg::configdir;
use pbs_tools::cert::CertInfo;
use proxmox_rrd::{rrd::CF, RRDCache};
@ -84,19 +84,19 @@ pub fn initialize_rrd_cache() -> Result<&'static RRDCache, Error> {
pub fn extract_rrd_data(
basedir: &str,
name: &str,
timeframe: RRDTimeFrameResolution,
timeframe: RRDTimeFrame,
mode: RRDMode,
) -> Result<Option<(u64, u64, Vec<Option<f64>>)>, Error> {
let end = proxmox_time::epoch_f64() as u64;
let (start, resolution) = match timeframe {
RRDTimeFrameResolution::Hour => (end - 3600, 60),
RRDTimeFrameResolution::Day => (end - 3600*24, 60),
RRDTimeFrameResolution::Week => (end - 3600*24*7, 30*60),
RRDTimeFrameResolution::Month => (end - 3600*24*30, 30*60),
RRDTimeFrameResolution::Year => (end - 3600*24*365, 6*60*60),
RRDTimeFrameResolution::Decade => (end - 10*3600*24*366, 7*86400),
RRDTimeFrame::Hour => (end - 3600, 60),
RRDTimeFrame::Day => (end - 3600*24, 60),
RRDTimeFrame::Week => (end - 3600*24*7, 30*60),
RRDTimeFrame::Month => (end - 3600*24*30, 30*60),
RRDTimeFrame::Year => (end - 3600*24*365, 6*60*60),
RRDTimeFrame::Decade => (end - 10*3600*24*366, 7*86400),
};
let cf = match mode {