Skip to content

Commit 4795553

Browse files
committed
Merge branch 'main' into new-metric-boxes
* main: Bump actions/create-github-app-token in /.github/workflows (#1284) Bump pylint from 3.3.7 to 3.3.8 (#1285) Updated echarts vor v.6.0 (#1282) Bump python from 3.13.5-slim-bookworm to 3.13.6-slim-bookworm in /docker (#1286) Bump deepdiff from 8.5.0 to 8.6.0 (#1283) Log parsing on full data (#1276) Bump redis from 6.3.0 to 6.4.0 (#1281) Added Gemini PR Review measurement_flow_process_duration is set in any case. Supplying a timeout of None will lead to no timeout Detect systemd cgroup path using cgroup name (instead of container id) (#1270) Bump redis from 6.2.0 to 6.3.0 (#1275) Removing sampling_rate for XGboost also from codespaces lsmod now uses sort Added kernel modules to listing (fix): Warnings error should not show on HTTP 204 - case is expected Fix NetworkIoCgroupSystemProvider doesn't create a value column (#1274) Clarifying comment for design decision Document the usage of cgroup system metric providers (#1273) Suspend check (#1269)
2 parents 7c9f1ea + d07c77d commit 4795553

File tree

58 files changed

+1057
-491
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

58 files changed

+1057
-491
lines changed

.devcontainer/codespace-setup.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ sed -i 's/- 9142:9142/- 9142:9142\n - 9143:9143/' /workspaces/green-metrics
1313
sed -i 's|- ./nginx/block.conf|#- ./nginx/block.conf|' /workspaces/green-metrics-tool/docker/compose.yml
1414

1515
# activate XGBoost provider with sane values for GitHub Codespaces
16-
sed -i 's/common:/common:\n psu.energy.ac.xgboost.machine.provider.PsuEnergyAcXgboostMachineProvider:\n sampling_rate: 99\n CPUChips: 1\n HW_CPUFreq: 2800\n CPUCores: 32\n CPUThreads: 64\n TDP: 270\n HW_MemAmountGB: 256\n VHost_Ratio: 0.03125\n/' /workspaces/green-metrics-tool/config.yml
16+
sed -i 's/common:/common:\n psu.energy.ac.xgboost.machine.provider.PsuEnergyAcXgboostMachineProvider:\n CPUChips: 1\n HW_CPUFreq: 2800\n CPUCores: 32\n CPUThreads: 64\n TDP: 270\n HW_MemAmountGB: 256\n VHost_Ratio: 0.03125\n/' /workspaces/green-metrics-tool/config.yml
1717

1818

1919
git clone https://github.com/green-coding-solutions/example-applications.git --depth=1 --single-branch /workspaces/green-metrics-tool/example-applications || true

.github/workflows/gemini-pr-review.yml

Lines changed: 458 additions & 0 deletions
Large diffs are not rendered by default.

config.yml.example

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -148,12 +148,34 @@ measurement:
148148
# sampling_rate: 99
149149
# memory.used.procfs.system.provider.MemoryUsedProcfsSystemProvider:
150150
# sampling_rate: 99
151+
#--- Cgroup system monitoring - These providers can be used to monitor background processes
151152
# cpu.utilization.cgroup.system.provider.CpuUtilizationCgroupSystemProvider:
152153
# sampling_rate: 99
153154
# cgroups:
154155
155156
# name: "Window Manager incl. X11"
156157
# "session-2.scope":
158+
# name: "GNOME Desktop"
159+
# memory.used.cgroup.system.provider.MemoryUsedCgroupSystemProvider:
160+
# sampling_rate: 99
161+
# cgroups:
162+
163+
# name: "Window Manager incl. X11"
164+
# "session-2.scope":
165+
# name: "GNOME Desktop"
166+
# disk.io.cgroup.system.provider.DiskIoCgroupSystemProvider:
167+
# sampling_rate: 99
168+
# cgroups:
169+
170+
# name: "Window Manager incl. X11"
171+
# "session-2.scope":
172+
# name: "GNOME Desktop"
173+
# network.io.cgroup.system.provider.NetworkIoCgroupSystemProvider:
174+
# sampling_rate: 99
175+
# cgroups:
176+
177+
# name: "Window Manager incl. X11"
178+
# "session-2.scope":
157179
# name: "GNOME Desktop"
158180

159181
#--- Architecture - MacOS

docker/Dockerfile-gunicorn

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM python:3.13.5-slim-bookworm
1+
FROM python:3.13.6-slim-bookworm
22
ENV DEBIAN_FRONTEND=noninteractive
33

44
WORKDIR /var/www/startup/

docker/requirements.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@ anybadge==1.16.0
1010
orjson==3.11.1
1111
scipy==1.15.2
1212
schema==0.7.7
13-
deepdiff==8.5.0
14-
redis==6.2.0
13+
deepdiff==8.6.0
14+
redis==6.4.0
1515
hiredis==3.2.1
1616
requests==2.32.4
1717
uvicorn-worker==0.3.0

docker/structure.sql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -280,7 +280,7 @@ CREATE TABLE measurement_metrics (
280280
sampling_rate_configured int NOT NULL
281281
);
282282

283-
CREATE UNIQUE INDEX measurement_metrics_get ON measurement_metrics(run_id,metric,detail_name); -- technically we could allow also different units, but we want to see the use case for that first
283+
CREATE UNIQUE INDEX measurement_metrics_get ON measurement_metrics(run_id,metric,detail_name); -- technically we could allow also different units, but we want to see the use case for that first. Also a lot of code relies on detail_name to be the final discriminator (e.g. metric providers .transform(utils.df_fill_mean) etc.m which then need to be rewritten)
284284
CREATE INDEX measurement_metrics_build_and_store_phase_stats ON measurement_metrics(run_id,metric,detail_name,unit);
285285
CREATE INDEX measurement_metrics_build_phases ON measurement_metrics(metric,detail_name,unit);
286286

frontend/dist/js/echarts.min.js

Lines changed: 5 additions & 23 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

frontend/js/compare.js

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,11 @@ const fetchWarningsForRuns = async (ids) => {
2525
const data = await makeAPICall('/v1/warnings/' + id);
2626
if (data?.data) warnings.push(...data.data);
2727
} catch (err) {
28-
showNotification('Could not get warnings data from API', err);
28+
if (err instanceof APIEmptyResponse204) {
29+
console.log('No warnings where present in API response. Skipping error as this is allowed case.')
30+
} else {
31+
showNotification('Could not get warnings data from API', err);
32+
}
2933
}
3034
}
3135
return warnings;

frontend/js/stats.js

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -593,8 +593,13 @@ const fetchAndFillWarnings = async (url_params) => {
593593
warnings = await makeAPICall('/v1/warnings/' + url_params['id'])
594594
if (!warnings || warnings?.data?.length === 0) return;
595595
} catch (err) {
596-
showNotification('Could not get warnings data from API', err);
596+
if (err instanceof APIEmptyResponse204) {
597+
console.log('No warnings where present in API response. Skipping error as this is allowed case.')
598+
} else {
599+
showNotification('Could not get warnings data from API', err);
600+
}
597601
return;
602+
598603
}
599604

600605
const container = document.querySelector('#run-warnings');

lib/c/Makefile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@ CFLAGS = -O3 -Wall
22

33
all: gmt-lib.o detect_cgroup_path.o
44

5-
gmt-lib.o: gmt-lib.c
5+
gmt-lib.o: gmt-lib.c gmt-lib.h
66
gcc -c $< $(CFLAGS) -o $@
77

8-
detect_cgroup_path.o: detect_cgroup_path.c
8+
detect_cgroup_path.o: detect_cgroup_path.c detect_cgroup_path.h
99
gcc -c $< $(CFLAGS) -o $@

0 commit comments

Comments
 (0)