Skip to content

Commit 282b00b

Browse files
authored
feat: remove dcu variable and configurations (#86)
1 parent 505d2bb commit 282b00b

File tree

7 files changed

+1
-83
lines changed

7 files changed

+1
-83
lines changed

bootstrap/feature/main.tf

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -28,16 +28,6 @@ variable "api_key_salt" {
2828
default = "ogmios-salt"
2929
}
3030

31-
variable "dcu_per_frame" {
32-
type = map(string)
33-
default = {
34-
"mainnet" = "10"
35-
"preprod" = "5"
36-
"preview" = "5"
37-
"vector-testnet" = "5"
38-
}
39-
}
40-
4131
variable "metrics_delay" {
4232
type = number
4333
default = 30

bootstrap/feature/operator.tf

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -66,11 +66,6 @@ resource "kubernetes_deployment_v1" "ogmios_operator" {
6666
value = var.api_key_salt
6767
}
6868

69-
env {
70-
name = "DCU_PER_FRAME"
71-
value = "mainnet=${var.dcu_per_frame["mainnet"]},preprod=${var.dcu_per_frame["preprod"]},preview=${var.dcu_per_frame["preview"]},vector-testnet=${var.dcu_per_frame["vector-testnet"]}"
72-
}
73-
7469
env {
7570
name = "METRICS_DELAY"
7671
value = var.metrics_delay

bootstrap/main.tf

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@ module "ogmios_v1_feature" {
2121
metrics_delay = var.metrics_delay
2222
extension_name = var.extension_name
2323
api_key_salt = var.api_key_salt
24-
dcu_per_frame = var.dcu_per_frame
2524
dns_zone = var.dns_zone
2625
resources = var.operator_resources
2726
}

bootstrap/variables.tf

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -54,16 +54,6 @@ variable "api_key_salt" {
5454
default = "ogmios-salt"
5555
}
5656

57-
variable "dcu_per_frame" {
58-
type = map(string)
59-
default = {
60-
"mainnet" = "10"
61-
"preprod" = "5"
62-
"preview" = "5"
63-
"vector-testnet" = "5"
64-
}
65-
}
66-
6757
variable "metrics_delay" {
6858
type = number
6959
default = 60

examples/manifest.yaml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -311,8 +311,6 @@ spec:
311311
env:
312312
- name: ADDR
313313
value: "0.0.0.0:9187"
314-
- name: DCU_PER_FRAME
315-
value: "preview=5,preprod=5,mainnet=5"
316314
- name: METRICS_DELAY
317315
value: "40"
318316
- name: PROMETHEUS_URL

operator/src/config.rs

Lines changed: 1 addition & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
use lazy_static::lazy_static;
2-
use std::{collections::HashMap, env, time::Duration};
2+
use std::{env, time::Duration};
33

44
lazy_static! {
55
static ref CONTROLLER_CONFIG: Config = Config::from_env();
@@ -14,7 +14,6 @@ pub struct Config {
1414
pub dns_zone: String,
1515
pub extension_name: String,
1616
pub api_key_salt: String,
17-
pub dcu_per_second: HashMap<String, f64>,
1817
pub metrics_delay: Duration,
1918
pub prometheus_url: String,
2019
}
@@ -25,20 +24,6 @@ impl Config {
2524
let extension_name = env::var("EXTENSION_NAME").unwrap_or("ogmios-m1".into());
2625
let api_key_salt = env::var("API_KEY_SALT").unwrap_or("ogmios-salt".into());
2726

28-
// This will be deprecated soon. Naming is like this for compatibility
29-
let dcu_per_second = env::var("DCU_PER_FRAME")
30-
.expect("DCU_PER_FRAME must be set")
31-
.split(',')
32-
.map(|pair| {
33-
let parts: Vec<&str> = pair.split('=').collect();
34-
let dcu = parts[1]
35-
.parse::<f64>()
36-
.expect("DCU_PER_FRAME must be NETWORK=NUMBER");
37-
38-
(parts[0].into(), dcu)
39-
})
40-
.collect();
41-
4227
let metrics_delay = Duration::from_secs(
4328
env::var("METRICS_DELAY")
4429
.expect("METRICS_DELAY must be set")
@@ -51,7 +36,6 @@ impl Config {
5136
dns_zone,
5237
extension_name,
5338
api_key_salt,
54-
dcu_per_second,
5539
metrics_delay,
5640
prometheus_url,
5741
}

operator/src/metrics.rs

Lines changed: 0 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -11,20 +11,13 @@ use crate::{get_config, Error, OgmiosPort, State};
1111

1212
#[derive(Clone)]
1313
pub struct Metrics {
14-
pub dcu: IntCounterVec,
1514
pub usage: IntCounterVec,
1615
pub reconcile_failures: IntCounterVec,
1716
pub metrics_failures: IntCounterVec,
1817
}
1918

2019
impl Default for Metrics {
2120
fn default() -> Self {
22-
let dcu = IntCounterVec::new(
23-
opts!("dmtr_consumed_dcus", "quantity of dcu consumed",),
24-
&["project", "service", "service_type", "tenancy"],
25-
)
26-
.unwrap();
27-
2821
let usage = IntCounterVec::new(
2922
opts!("usage", "Feature usage",),
3023
&["feature", "project", "resource_name", "tier"],
@@ -52,15 +45,13 @@ impl Default for Metrics {
5245
Metrics {
5346
reconcile_failures,
5447
usage,
55-
dcu,
5648
metrics_failures,
5749
}
5850
}
5951
}
6052

6153
impl Metrics {
6254
pub fn register(self, registry: &Registry) -> Result<Self, prometheus::Error> {
63-
registry.register(Box::new(self.dcu.clone()))?;
6455
registry.register(Box::new(self.metrics_failures.clone()))?;
6556
registry.register(Box::new(self.reconcile_failures.clone()))?;
6657
registry.register(Box::new(self.usage.clone()))?;
@@ -80,18 +71,6 @@ impl Metrics {
8071
.inc()
8172
}
8273

83-
pub fn count_dcu_consumed(&self, project: &str, network: &str, dcu: f64) {
84-
let service = format!("{}-{}", OgmiosPort::kind(&()), network);
85-
let service_type = format!("{}.{}", OgmiosPort::plural(&()), OgmiosPort::group(&()));
86-
let tenancy = "proxy";
87-
88-
let dcu: u64 = dcu.ceil() as u64;
89-
90-
self.dcu
91-
.with_label_values(&[project, &service, &service_type, tenancy])
92-
.inc_by(dcu);
93-
}
94-
9574
pub fn count_usage(&self, project: &str, resource_name: &str, tier: &str, value: f64) {
9675
let feature = &OgmiosPort::kind(&());
9776
let value: u64 = value.ceil() as u64;
@@ -174,26 +153,9 @@ pub async fn run_metrics_collector(state: Arc<State>) {
174153
if network_captures.is_none() {
175154
continue;
176155
}
177-
let network_captures = network_captures.unwrap();
178-
let network = network_captures.get(1).unwrap().as_str();
179-
180-
let dcu_per_second = config.dcu_per_second.get(network);
181-
if dcu_per_second.is_none() {
182-
let error = Error::ConfigError(format!(
183-
"dcu_per_second not configured to {} network",
184-
network
185-
));
186-
error!(error = error.to_string());
187-
state.metrics.metrics_failure(&error);
188-
continue;
189-
}
190156

191-
let dcu_per_second = dcu_per_second.unwrap();
192157
let total_exec_time = result.value * (interval as f64);
193158

194-
let dcu = total_exec_time * dcu_per_second;
195-
196-
state.metrics.count_dcu_consumed(project, network, dcu);
197159
if let Some(tier) = result.metric.tier {
198160
state
199161
.metrics

0 commit comments

Comments
 (0)