Zeitangabe beim Filenamen des Cashes ist nun ok

This commit is contained in:
2026-06-23 10:06:15 +02:00
parent c8197b72fc
commit d0730901d2
7 changed files with 160 additions and 45 deletions
+3 -1
View File
@@ -19,7 +19,9 @@
- [x] Zweistufige p-Gruppen-Abfrage stabilisieren
- [ ] Cronjob/Intervall in Node-RED für tägliches Update einrichten
- [ ] Fehlerhandling
- [ ] Zeit wird falsch angegeben (Zeit fuer Filenamen mit $now)
- [x] Zeit wird falsch angegeben (Zeit fuer Filenamen mit $now)
- [x] Aktuell Fehler beim berechnen der Zeit fuer das File
- [ ] In "Set Filename" wird soll eine Umgebungsvariable verwendet werden
## 🐳 Docker & Deployment
- [ ] Docker-Volumes für Produktion prüfen
+7 -1
View File
@@ -13,7 +13,10 @@ RUN apk add --no-cache \
gcc \
g++ \
musl-dev \
libffi-dev
libffi-dev \
tzdata
USER node-red
# Python-Pakete installieren (ldap3 separat via pip)
RUN pip install --no-cache-dir ldap3 --break-system-packages
@@ -27,3 +30,6 @@ RUN pip3 install --no-cache-dir --break-system-packages \
# Zurück zum Node-RED User für die Sicherheit
USER node-red
# Installiere "moment" Node um die richtige Zeitzone verwenden zu koennen
RUN npm install node-red-contrib-moment
+30
View File
@@ -426,5 +426,35 @@
"file": "/usr/src/node-red/node_modules/@node-red/nodes/core/storage/23-watch.js"
}
}
},
"node-red-contrib-moment": {
"name": "node-red-contrib-moment",
"version": "5.0.0",
"local": false,
"user": false,
"nodes": {
"moment": {
"name": "moment",
"types": [
"moment"
],
"enabled": true,
"local": false,
"user": false,
"module": "node-red-contrib-moment",
"file": "/usr/src/node-red/node_modules/node-red-contrib-moment/moment/nrmoment.js"
},
"humanizer": {
"name": "humanizer",
"types": [
"humanizer"
],
"enabled": true,
"local": false,
"user": false,
"module": "node-red-contrib-moment",
"file": "/usr/src/node-red/node_modules/node-red-contrib-moment/moment/nrhumanizer.js"
}
}
}
}
+4 -4
View File
@@ -27,7 +27,7 @@
"v": 4,
"tabs": [],
"primary": {
"width": 300,
"width": 276,
"top": {
"tabs": [
"info",
@@ -35,9 +35,9 @@
"config",
"context"
],
"height": 142,
"height": 153,
"hidden": false,
"active": "info"
"active": "help"
},
"bottom": {
"tabs": [
@@ -53,7 +53,7 @@
"tabs": [
"explorer"
],
"height": 302,
"height": 304,
"hidden": false,
"active": "explorer"
},
@@ -1 +1 @@
size_by_ownergroup_and_number_of_copies_2026-06-22T13_25_38.096Z.json
size_by_ownergroup_and_number_of_copies_2026-06-23T09_52_12.json
+114 -37
View File
@@ -50,7 +50,7 @@
"payload": "",
"payloadType": "date",
"x": 120,
"y": 360,
"y": 260,
"wires": [
[
"metabase_api_flow"
@@ -63,6 +63,13 @@
"z": "5a9dd923b7459820",
"name": "Metabase configuration of request",
"rules": [
{
"t": "set",
"p": "start_time",
"pt": "msg",
"to": "$millis()",
"tot": "jsonata"
},
{
"t": "set",
"p": "method",
@@ -98,7 +105,7 @@
"to": "",
"reg": false,
"x": 380,
"y": 360,
"y": 260,
"wires": [
[
"metabase_http_node"
@@ -122,7 +129,7 @@
"senderr": false,
"headers": [],
"x": 670,
"y": 360,
"y": 260,
"wires": [
[
"b8cc9c157460e2c5"
@@ -142,8 +149,8 @@
"targetType": "msg",
"statusVal": "",
"statusType": "auto",
"x": 930,
"y": 460,
"x": 250,
"y": 600,
"wires": []
},
{
@@ -154,11 +161,11 @@
"property": "payload",
"action": "",
"pretty": false,
"x": 210,
"y": 460,
"x": 190,
"y": 360,
"wires": [
[
"91e9f1c0e52a0592"
"2d607e7db0d4c765"
]
]
},
@@ -173,8 +180,8 @@
"createDir": false,
"overwriteFile": "true",
"encoding": "none",
"x": 690,
"y": 460,
"x": 130,
"y": 500,
"wires": [
[
"metabase_output_debug",
@@ -192,7 +199,7 @@
"t": "set",
"p": "filename",
"pt": "msg",
"to": "\"/data/size_by_ownergroup_and_number_of_copies_\" & $replace($now(), \":\", \"_\") & \".json\"",
"to": "\"/data/size_by_ownergroup_and_number_of_copies_\" & msg.date_string & \".json\"",
"tot": "jsonata"
}
],
@@ -201,11 +208,12 @@
"from": "",
"to": "",
"reg": false,
"x": 490,
"y": 460,
"x": 750,
"y": 360,
"wires": [
[
"cc064f55fd438347"
"cc064f55fd438347",
"7e0c38cadf8c5ebe"
]
]
},
@@ -231,8 +239,8 @@
"winHide": false,
"oldrc": false,
"name": "create link to newest archivegroup information json",
"x": 310,
"y": 600,
"x": 550,
"y": 500,
"wires": [
[
"0957c917da9bc8b3",
@@ -250,7 +258,7 @@
"id": "0957c917da9bc8b3",
"type": "debug",
"z": "5a9dd923b7459820",
"name": "end of workflow",
"name": "See external commands non errors",
"active": true,
"tosidebar": true,
"console": false,
@@ -259,8 +267,8 @@
"targetType": "msg",
"statusVal": "",
"statusType": "auto",
"x": 740,
"y": 560,
"x": 1020,
"y": 500,
"wires": []
},
{
@@ -274,8 +282,8 @@
"createDir": false,
"overwriteFile": "false",
"encoding": "none",
"x": 580,
"y": 740,
"x": 680,
"y": 660,
"wires": [
[
"394f5382cb6182dd"
@@ -301,8 +309,8 @@
"from": "",
"to": "",
"reg": false,
"x": 360,
"y": 740,
"x": 460,
"y": 660,
"wires": [
[
"7fa57e2c57d1e6eb"
@@ -322,8 +330,8 @@
"targetType": "msg",
"statusVal": "",
"statusType": "auto",
"x": 830,
"y": 740,
"x": 930,
"y": 660,
"wires": []
},
{
@@ -333,7 +341,7 @@
"name": "link in Get New Groupinformation",
"links": [],
"x": 125,
"y": 280,
"y": 180,
"wires": [
[
"metabase_api_flow"
@@ -347,8 +355,8 @@
"name": "link out Get New Groupinformation",
"mode": "return",
"links": [],
"x": 825,
"y": 640,
"x": 915,
"y": 420,
"wires": []
},
{
@@ -365,8 +373,8 @@
"91e9f1c0e52a0592",
"63ed8c262fa7753b"
],
"x": 720,
"y": 260,
"x": 240,
"y": 760,
"wires": [
[
"dfd30c3d6f180d27"
@@ -386,6 +394,48 @@
"targetType": "full",
"statusVal": "",
"statusType": "auto",
"x": 460,
"y": 760,
"wires": []
},
{
"id": "2d607e7db0d4c765",
"type": "moment",
"z": "5a9dd923b7459820",
"name": "Prepare date format for filename",
"topic": "",
"input": "start_time",
"inputType": "msg",
"inTz": "Europe/Zurich",
"adjAmount": 0,
"adjType": "days",
"adjDir": "add",
"format": "YYYY-MM-DD[T]HH_mm_ss",
"locale": "en-US",
"output": "date_string",
"outputType": "msg",
"outTz": "Europe/Zurich",
"x": 510,
"y": 360,
"wires": [
[
"91e9f1c0e52a0592"
]
]
},
{
"id": "7e0c38cadf8c5ebe",
"type": "debug",
"z": "5a9dd923b7459820",
"name": "Show filename",
"active": true,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "filename",
"targetType": "msg",
"statusVal": "",
"statusType": "auto",
"x": 940,
"y": 260,
"wires": []
@@ -603,7 +653,7 @@
],
"linkType": "static",
"timeout": "300",
"x": 440,
"x": 380,
"y": 280,
"wires": [
[
@@ -621,7 +671,7 @@
],
"linkType": "static",
"timeout": "300",
"x": 820,
"x": 700,
"y": 280,
"wires": [
[
@@ -642,7 +692,7 @@
"targetType": "msg",
"statusVal": "",
"statusType": "auto",
"x": 1120,
"x": 960,
"y": 280,
"wires": []
},
@@ -655,8 +705,8 @@
"b994acfe29648a35",
"5dab821150d36d52"
],
"x": 420,
"y": 400,
"x": 400,
"y": 360,
"wires": [
[
"a613cbef5aae458b"
@@ -676,8 +726,35 @@
"targetType": "full",
"statusVal": "",
"statusType": "auto",
"x": 660,
"y": 400,
"x": 620,
"y": 360,
"wires": []
},
{
"id": "2f498ce2ead2e74c",
"type": "inject",
"z": "1593c8c9a04da215",
"name": "Periodischer Trigger",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "300",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"topic": "",
"payload": "",
"payloadType": "date",
"x": 180,
"y": 180,
"wires": [
[]
]
}
]
File diff suppressed because one or more lines are too long