Files
Tesi/peertube/statnerd/CRUD/mongodb-convert-to.ts.js

64 lines
1.6 KiB
JavaScript

/* global use, db */
// MongoDB Playground
// To disable this template go to Settings | MongoDB | Use Default Template For Playground.
// Make sure you are connected to enable completions and to be able to run a playground.
// Use Ctrl+Space inside a snippet or a string literal to trigger completions.
// The result of the last command run in a playground is shown on the results panel.
// By default the first 20 documents will be returned with a cursor.
// Use 'console.log()' to print to the debug output.
// For more documentation on playgrounds please refer to
// https://www.mongodb.com/docs/mongodb-vscode/playgrounds/
use("statistics");
db.peertube.aggregate([
{
$set: {
player: {
$function: {
lang: "js",
args: ["$player"],
body: function (str) {
try {
return JSON.parse(str);
} catch (e) {
if (typeof str === "object") {
return str;
} else {
return null;
}
}
},
},
},
peers: {
$function: {
lang: "js",
args: ["$peers"],
body: function (str) {
try {
return JSON.parse(str);
} catch (e) {
if (typeof str === "object") {
return str;
} else {
return null;
}
}
},
},
},
},
},
{
$out: {
db: "statistics",
coll: "peertube_ts",
timeseries: {
timeField: "timestamp",
metaField: "tags",
granularity: "seconds",
},
},
},
]);