@thias
welcher teil?
der folgende beispielcode ruft die daten der letzen 60 Minuten ab.
Zeitangabe erfolgt in Millisekunden, daher Date.now()-1000*60*60 == 3.600.000
start und ende wird per start und end definiert.
die daten werden dann im callback zurückgegebeen.
im beispiel die funktion die als funktionsparameter definiert ist, die daten sind dann in result enthalten und kann damit daann weiterverarbeitet werden.
bisher also nur in einer variable.
den genauen aufbau der variable/objekt weiß ich nicht, da musst dir das ergebnis dann mal ausgeben lassen (am besten während der entwicklung noch nicht ganz soviele daten ausgeben lassen)
im beispiel ist ja schon eine ausgabe auf die console enthalten.
var end = Date.now();
sendTo('history.0', 'getHistory', {
id: 'system.adapter.admin.0.memRss',
options: {
start: end - 3600000,
end: end,
aggregate: 'onchange'
}
}, function (result) {
for (var i = 0; i < result.result.length; i++) {
console.log(result.result[i].val + ' ' + new Date(result.result[i].ts).toISOString());
}
});
im nächsten schritt nimmst du die daten und bereitest die für csv auf und schreibst sie mit fs.writeFile in eine datei auf deiner festplatte
https://nodejs.org/api/fs.html#fswritefilesyncfile-data-options
hier noch ein beispiel
https://www.geeksforgeeks.org/node-js-fs-writefilesync-method/