diff --git a/deployment/atlas_charts/Leafsteroids - Event Dashboard - Federated.charts b/deployment/atlas_charts/Leafsteroids - Event Dashboard - Federated.charts new file mode 100644 index 0000000..d8e69b2 --- /dev/null +++ b/deployment/atlas_charts/Leafsteroids - Event Dashboard - Federated.charts @@ -0,0 +1,717 @@ +{ + "exportVersion": 6, + "dashboards": { + "dashboard-1": { + "description": "", + "embedding": { + "anonymousAuthEnabled": true, + "allowAllFieldsAnonymousAuth": false, + "anonymousAuthWhitelist": ["location", "Event._id"] + }, + "filters": [{ + "type": "String", + "disabled": false, + "name": "location", + "settings": { + "allOthers": false, + "values": ["US-CA"] + }, + "linkedFields": [{ + "dataSourceId": "data-source-1", + "fieldPath": "location" + }] + }, { + "type": "String", + "disabled": false, + "name": "_id", + "settings": { + "allOthers": false, + "values": ["mdb-internal"] + }, + "linkedFields": [{ + "dataSourceId": "data-source-1", + "fieldPath": "Event._id" + }] + }], + "layout": [{ + "i": "item-1", + "w": 3, + "h": 2, + "x": 0, + "y": 0 + }, { + "i": "item-2", + "w": 1, + "h": 1, + "x": 0, + "y": 2 + }, { + "i": "item-3", + "w": 3, + "h": 3, + "x": 3, + "y": 1 + }, { + "i": "item-4", + "w": 1, + "h": 1, + "x": 0, + "y": 3 + }, { + "i": "item-5", + "w": 1, + "h": 1, + "x": 1, + "y": 2 + }, { + "i": "item-6", + "w": 1, + "h": 1, + "x": 2, + "y": 2 + }, { + "i": "item-7", + "w": 2, + "h": 1, + "x": 3, + "y": 0 + }, { + "i": "item-8", + "w": 2, + "h": 1, + "x": 1, + "y": 3 + }, { + "i": "item-9", + "w": 1, + "h": 1, + "x": 5, + "y": 0 + }], + "title": "Leafsteroids - Event Dashboard" + } + }, + "items": { + "item-1": { + "calculatedFields": [], + "channels": { + "x": { + "channelType": "category", + "inferredType": "Number", + "field": "Snapshots.PlayerPosition.X", + "type": "nominal", + "transformedType": "Number", + "isBinning": true, + "quantitativeBinning": { + "binSize": 1 + } + }, + "y": { + "channelType": "category", + "inferredType": "Number", + "field": "Snapshots.PlayerPosition.Z", + "type": "nominal", + "transformedType": "Number", + "isBinning": true, + "quantitativeBinning": { + "binSize": 1 + } + }, + "color": { + "channelType": "aggregation", + "inferredType": "String", + "field": "_id", + "type": "quantitative", + "aggregate": "count" + } + }, + "chartType": "Heatmap", + "convertedFields": [], + "customisations": { + "options": { + "colorContinuous": { + "enabled": true, + "value": { + "color": "yelloworangered", + "reverse": false + } + } + }, + "conditionalFormatting": [], + "axes": { + "x": { + "categoryLabelAngle": { + "enabled": true, + "value": "vertical" + } + } + }, + "channels": { + "x": { + "numberFormatting": { + "enabled": true, + "value": "Default" + } + }, + "y": { + "numberFormatting": { + "enabled": true, + "value": "Default" + } + }, + "color": { + "numberFormatting": { + "enabled": true, + "value": "Default" + } + } + } + }, + "dashboardId": "dashboard-1", + "dataSourceId": "data-source-1", + "description": "", + "filters": [], + "iconValue": "heatmap", + "interactiveFiltering": "highlight", + "itemType": "chart", + "lookupFields": [], + "meta": {}, + "missedFields": [], + "query": null, + "queryId": null, + "reductions": { + "x": [{ + "dimensionality": 1, + "field": "Snapshots", + "type": "Unwind array", + "arguments": [] + }], + "y": [{ + "dimensionality": 1, + "field": "Snapshots", + "type": "Unwind array", + "arguments": [] + }] + }, + "sample": false, + "title": "Heat Map: Player Location", + "embedding": { + "anonymousAuthEnabled": true + } + }, + "item-2": { + "calculatedFields": [], + "channels": { + "value": { + "channelType": "aggregation", + "inferredType": "String", + "field": "_id", + "type": "quantitative", + "aggregate": "count" + } + }, + "chartType": "Number", + "convertedFields": [], + "customisations": { + "options": {}, + "conditionalFormatting": [], + "axes": {}, + "channels": { + "value": { + "numberFormatting": { + "enabled": true, + "value": "Default" + } + } + } + }, + "dashboardId": "dashboard-1", + "dataSourceId": "data-source-1", + "description": "", + "filters": [], + "iconValue": "number", + "interactiveFiltering": "highlight", + "itemType": "chart", + "lookupFields": [], + "meta": {}, + "missedFields": [], + "query": null, + "queryId": null, + "reductions": {}, + "sample": false, + "title": "Games Played", + "embedding": {} + }, + "item-3": { + "calculatedFields": [], + "channels": { + "group": { + "channelType": "category", + "inferredType": "String", + "field": "Player.Nickname", + "type": "nominal", + "isBinning": false + }, + "value": { + "channelType": "aggregation", + "inferredType": "Number", + "field": "SessionStatisticsPlain.Score", + "type": "quantitative", + "aggregate": "max" + } + }, + "chartType": "Data Table", + "convertedFields": [], + "customisations": { + "options": { + "totalsColumn": { + "enabled": false, + "value": null + } + }, + "conditionalFormatting": [], + "axes": {}, + "channels": { + "group": { + "labelOverride": { + "enabled": true, + "value": "Player" + } + }, + "value": { + "labelOverride": { + "enabled": true, + "value": "Score" + }, + "numberFormatting": { + "enabled": true, + "value": "Default" + } + } + } + }, + "dashboardId": "dashboard-1", + "dataSourceId": "data-source-1", + "description": "", + "filters": [], + "iconValue": "data-table", + "interactiveFiltering": "filter", + "itemType": "chart", + "lookupFields": [], + "meta": { + "sortModel": [{ + "colId": "value", + "sort": "desc" + }], + "columnWidths": { + "group": 150 + } + }, + "missedFields": [], + "query": null, + "queryId": null, + "reductions": {}, + "sample": false, + "title": "Leaderboard", + "embedding": { + "anonymousAuthEnabled": true + } + }, + "item-4": { + "calculatedFields": [], + "channels": { + "x_series_0": { + "channelType": "aggregation", + "inferredType": "Number", + "field": "SessionStatisticsPlain.PelletsDestroyedMedium", + "type": "quantitative", + "aggregate": "sum" + }, + "x_series_1": { + "channelType": "aggregation", + "inferredType": "Number", + "field": "SessionStatisticsPlain.PelletsDestroyedSmall", + "type": "quantitative", + "aggregate": "sum" + }, + "x": { + "channelType": "aggregation", + "inferredType": "Number", + "field": "SessionStatisticsPlain.PelletsDestroyedLarge", + "type": "quantitative", + "aggregate": "sum" + } + }, + "chartType": "Grouped Bar", + "convertedFields": [], + "customisations": { + "axes": { + "x": { + "labelOverride": { + "enabled": true, + "value": "Amount" + } + } + }, + "conditionalFormatting": [], + "channels": { + "x": { + "labelOverride": { + "enabled": true, + "value": "Large" + }, + "numberFormatting": { + "enabled": true, + "value": "Default" + } + }, + "x_series_0": { + "labelOverride": { + "enabled": true, + "value": "Medium" + }, + "numberFormatting": { + "enabled": true, + "value": "Default" + } + }, + "x_series_1": { + "labelOverride": { + "enabled": true, + "value": "Small" + }, + "numberFormatting": { + "enabled": true, + "value": "Default" + } + } + }, + "options": {} + }, + "dashboardId": "dashboard-1", + "dataSourceId": "data-source-1", + "description": "", + "filters": [], + "iconValue": "bar-grouped", + "interactiveFiltering": "highlight", + "itemType": "chart", + "lookupFields": [], + "meta": {}, + "missedFields": [], + "query": null, + "queryId": null, + "reductions": {}, + "sample": false, + "title": "Pellets Destroyed", + "embedding": {} + }, + "item-5": { + "calculatedFields": [], + "channels": { + "value": { + "channelType": "aggregation", + "inferredType": "Number", + "field": "SessionStatisticsPlain.BulletsFired", + "type": "quantitative", + "aggregate": "sum" + } + }, + "chartType": "Number", + "convertedFields": [], + "customisations": { + "options": {}, + "axes": {}, + "channels": { + "value": { + "numberFormatting": { + "enabled": true, + "value": "Default" + } + } + }, + "conditionalFormatting": [] + }, + "dashboardId": "dashboard-1", + "dataSourceId": "data-source-1", + "description": "", + "filters": [], + "iconValue": "number", + "interactiveFiltering": "highlight", + "itemType": "chart", + "lookupFields": [], + "meta": {}, + "missedFields": [], + "query": null, + "queryId": null, + "reductions": {}, + "sample": false, + "title": "Total Bullets Fired", + "embedding": {} + }, + "item-6": { + "calculatedFields": [], + "channels": { + "value": { + "channelType": "aggregation", + "inferredType": "Number", + "field": "SessionStatisticsPlain.DamageDone", + "type": "quantitative", + "aggregate": "sum" + } + }, + "chartType": "Number", + "convertedFields": [], + "customisations": { + "options": {}, + "conditionalFormatting": [], + "axes": {}, + "channels": { + "value": { + "numberFormatting": { + "enabled": true, + "value": "Default" + } + } + } + }, + "dashboardId": "dashboard-1", + "dataSourceId": "data-source-1", + "description": "", + "filters": [], + "iconValue": "number", + "interactiveFiltering": "highlight", + "itemType": "chart", + "lookupFields": [], + "meta": {}, + "missedFields": [], + "query": null, + "queryId": null, + "reductions": {}, + "sample": false, + "title": "Total Damage", + "embedding": {} + }, + "item-7": { + "calculatedFields": [], + "channels": { + "x": { + "channelType": "category", + "inferredType": "Date", + "field": "DateTime", + "type": "nominal", + "isBinning": true, + "temporalBinning": ["hours"] + }, + "y": { + "channelType": "aggregation", + "inferredType": "String", + "field": "Player.Nickname", + "type": "quantitative", + "aggregate": "count" + } + }, + "chartType": "Line", + "convertedFields": [{ + "fieldPath": "DateTime", + "convertTo": "date", + "arrayParentPaths": [] + }], + "customisations": { + "options": { + "colorDiscrete": { + "enabled": true, + "value": ["#196ee6"] + }, + "dataMarkers": { + "enabled": true, + "value": null + }, + "dataValueLabels": { + "enabled": true, + "value": null + } + }, + "axes": { + "x": { + "categoryLabelAngle": { + "enabled": true, + "value": "vertical" + } + }, + "y": {} + }, + "channels": { + "x": { + "labelOverride": { + "enabled": true, + "value": "Time" + }, + "dateTimeFormatting": { + "enabled": true, + "value": "HH:00" + } + }, + "y": { + "numberFormatting": { + "enabled": true, + "value": "Default" + } + } + }, + "conditionalFormatting": [] + }, + "dashboardId": "dashboard-1", + "dataSourceId": "data-source-1", + "description": "", + "filters": [], + "iconValue": "line-discrete", + "interactiveFiltering": "filter", + "itemType": "chart", + "lookupFields": [], + "meta": {}, + "missedFields": [], + "query": null, + "queryId": null, + "reductions": {}, + "sample": false, + "title": "Player Activity", + "embedding": {} + }, + "item-8": { + "calculatedFields": [], + "channels": { + "x": { + "channelType": "aggregation", + "inferredType": "Number", + "field": "SessionStatisticsPlain.PowerUpBulletDamageCollected", + "type": "quantitative", + "aggregate": "sum" + }, + "x_series_0": { + "channelType": "aggregation", + "inferredType": "Number", + "field": "SessionStatisticsPlain.PowerUpBulletSpeedCollected", + "type": "quantitative", + "aggregate": "sum" + }, + "x_series_1": { + "channelType": "aggregation", + "inferredType": "Number", + "field": "SessionStatisticsPlain.PowerUpPlayerSpeedCollected", + "type": "quantitative", + "aggregate": "sum" + } + }, + "chartType": "Grouped Bar", + "convertedFields": [], + "customisations": { + "options": {}, + "conditionalFormatting": [], + "axes": { + "x": {} + }, + "channels": { + "x": { + "labelOverride": { + "enabled": true, + "value": "Bullet Damage" + }, + "numberFormatting": { + "enabled": true, + "value": "Default" + } + }, + "x_series_0": { + "labelOverride": { + "enabled": true, + "value": "Bullet Speed" + }, + "numberFormatting": { + "enabled": true, + "value": "Default" + } + }, + "x_series_1": { + "labelOverride": { + "enabled": true, + "value": "Player Speed" + }, + "numberFormatting": { + "enabled": true, + "value": "Default" + } + } + } + }, + "dashboardId": "dashboard-1", + "dataSourceId": "data-source-1", + "description": "", + "filters": [], + "iconValue": "bar-grouped", + "interactiveFiltering": "highlight", + "itemType": "chart", + "lookupFields": [], + "meta": {}, + "missedFields": [], + "query": null, + "queryId": null, + "reductions": {}, + "sample": false, + "title": "Power Ups Collected", + "embedding": {} + }, + "item-9": { + "calculatedFields": [], + "channels": { + "value": { + "channelType": "aggregation", + "inferredType": "String", + "field": "Player.Nickname", + "type": "quantitative", + "aggregate": "distinct" + } + }, + "chartType": "Number", + "convertedFields": [], + "customisations": { + "options": {}, + "axes": {}, + "channels": { + "value": { + "numberFormatting": { + "enabled": true, + "value": "Default" + } + } + }, + "conditionalFormatting": [] + }, + "dashboardId": "dashboard-1", + "dataSourceId": "data-source-1", + "description": "", + "filters": [], + "iconValue": "number", + "interactiveFiltering": "highlight", + "itemType": "chart", + "lookupFields": [], + "meta": {}, + "missedFields": [], + "query": null, + "queryId": null, + "reductions": {}, + "sample": false, + "title": "# Unique Players", + "embedding": {} + } + }, + "dataSources": { + "data-source-1": { + "alias": "recordings", + "collection": "recordings", + "database": "Leafsteroids", + "deployment": "Leafsteroids--federated", + "sourceType": "datalake" + } + }, + "queries": {} +} \ No newline at end of file diff --git a/deployment/atlas_charts/Leafsteroids - Event Dashboard.charts b/deployment/atlas_charts/Leafsteroids - Event Dashboard.charts index 8122248..fa97e23 100644 --- a/deployment/atlas_charts/Leafsteroids - Event Dashboard.charts +++ b/deployment/atlas_charts/Leafsteroids - Event Dashboard.charts @@ -9,24 +9,12 @@ "anonymousAuthWhitelist": ["location", "Event._id"] }, "filters": [{ - "type": "String", - "disabled": true, - "name": "DateTime", - "settings": { - "allOthers": true, - "values": [null, "", "2023-03-22T16:54:43.0237652Z", "2023-03-22T17:26:40.5307982Z", "2023-03-22T17:42:17.8491458Z", "2023-03-22T18:09:21.1234055Z", "2023-03-22T19:01:13.8491565Z", "2023-03-22T19:07:16.827622Z", "2023-03-22T19:13:42.459265Z", "2023-03-22T19:21:19.2251935Z", "2023-03-22T19:46:03.1561755Z", "2023-03-22T19:54:08.8854326Z", "2023-03-22T20:00:17.9214215Z", "2023-03-22T22:00:45.0914022Z", "2023-03-22T22:09:38.3658714Z", "2023-03-22T22:15:28.6340605Z", "2023-03-22T22:29:40.3666591Z", "2023-03-22T23:19:39.8369564Z", "2023-03-22T23:24:59.4745029Z", "2023-03-22T23:46:44.5247699Z", "2023-03-22T23:48:41.9151363Z", "2023-03-23T00:28:57.9465764Z"] - }, - "linkedFields": [{ - "dataSourceId": "data-source-1", - "fieldPath": "DateTime" - }] - }, { "type": "String", "disabled": false, "name": "location", "settings": { - "allOthers": true, - "values": [null, ""] + "allOthers": false, + "values": ["US-CA"] }, "linkedFields": [{ "dataSourceId": "data-source-1", @@ -38,7 +26,7 @@ "name": "_id", "settings": { "allOthers": false, - "values": ["gdc-2023-sf"] + "values": ["mdb-internal"] }, "linkedFields": [{ "dataSourceId": "data-source-1", @@ -47,8 +35,8 @@ }], "layout": [{ "i": "item-1", - "w": 4, - "h": 3, + "w": 3, + "h": 2, "x": 0, "y": 0 }, { @@ -56,43 +44,49 @@ "w": 1, "h": 1, "x": 0, - "y": 3 + "y": 2 }, { "i": "item-3", - "w": 2, - "h": 4, - "x": 7, - "y": 0 + "w": 3, + "h": 3, + "x": 3, + "y": 1 }, { "i": "item-4", - "w": 3, + "w": 1, "h": 1, - "x": 4, - "y": 2 + "x": 0, + "y": 3 }, { "i": "item-5", "w": 1, "h": 1, "x": 1, - "y": 3 + "y": 2 }, { "i": "item-6", - "w": 2, + "w": 1, "h": 1, "x": 2, - "y": 3 + "y": 2 }, { "i": "item-7", - "w": 3, - "h": 2, - "x": 4, + "w": 2, + "h": 1, + "x": 3, "y": 0 }, { "i": "item-8", - "w": 3, + "w": 2, "h": 1, - "x": 4, + "x": 1, "y": 3 + }, { + "i": "item-9", + "w": 1, + "h": 1, + "x": 5, + "y": 0 }], "title": "Leafsteroids - Event Dashboard" } @@ -183,7 +177,7 @@ "lookupFields": [], "meta": {}, "missedFields": [], - "query": "[\n {\n $unwind: \"$Snapshots\"\n },\n {\n $project: {\n _id: 0,\n \"Snapshots.PlayerPosition\": 1\n }\n },\n {\n $match: {\n $and: [\n {\n $or: [\n {\n \"Snapshots.PlayerPosition.X\": {\n $gte: 2\n }\n },\n {\n \"Snapshots.PlayerPosition.X\": {\n $lte: -2\n }\n }\n ]\n },\n {\n $or: [\n {\n \"Snapshots.PlayerPosition.Z\": {\n $gte: 1\n }\n },\n {\n \"Snapshots.PlayerPosition.Z\": {\n $lte: 0\n }\n }\n ]\n }\n ]\n }\n }\n]", + "query": null, "queryId": null, "reductions": { "x": [{ @@ -665,6 +659,49 @@ "sample": false, "title": "Power Ups Collected", "embedding": {} + }, + "item-9": { + "calculatedFields": [], + "channels": { + "value": { + "channelType": "aggregation", + "inferredType": "String", + "field": "Player.Nickname", + "type": "quantitative", + "aggregate": "distinct" + } + }, + "chartType": "Number", + "convertedFields": [], + "customisations": { + "options": {}, + "axes": {}, + "channels": { + "value": { + "numberFormatting": { + "enabled": true, + "value": "Default" + } + } + }, + "conditionalFormatting": [] + }, + "dashboardId": "dashboard-1", + "dataSourceId": "data-source-1", + "description": "", + "filters": [], + "iconValue": "number", + "interactiveFiltering": "highlight", + "itemType": "chart", + "lookupFields": [], + "meta": {}, + "missedFields": [], + "query": null, + "queryId": null, + "reductions": {}, + "sample": false, + "title": "# Unique Players", + "embedding": {} } }, "dataSources": { diff --git a/deployment/atlas_charts/Leafsteroids - Event Top Scores - Federated.charts b/deployment/atlas_charts/Leafsteroids - Event Top Scores - Federated.charts new file mode 100644 index 0000000..f84f875 --- /dev/null +++ b/deployment/atlas_charts/Leafsteroids - Event Top Scores - Federated.charts @@ -0,0 +1,133 @@ +{ + "exportVersion": 6, + "dashboards": { + "dashboard-1": { + "description": "", + "embedding": { + "anonymousAuthEnabled": true, + "allowAllFieldsAnonymousAuth": false, + "anonymousAuthWhitelist": ["location", "Event._id"] + }, + "filters": [{ + "type": "String", + "disabled": false, + "name": "location", + "settings": { + "allOthers": false, + "values": ["US-CA"] + }, + "linkedFields": [{ + "dataSourceId": "data-source-1", + "fieldPath": "location" + }] + }, { + "type": "String", + "disabled": false, + "name": "_id", + "settings": { + "allOthers": false, + "values": ["gdc-2023-sf"] + }, + "linkedFields": [{ + "dataSourceId": "data-source-1", + "fieldPath": "Event._id" + }] + }], + "layout": [{ + "i": "item-1", + "w": 2, + "h": 4, + "x": 0, + "y": 0 + }], + "title": "Leafsteroids - Event Top Scores" + } + }, + "items": { + "item-1": { + "calculatedFields": [], + "channels": { + "group": { + "channelType": "category", + "inferredType": "String", + "field": "Player.Nickname", + "type": "nominal", + "isBinning": false + }, + "value": { + "channelType": "aggregation", + "inferredType": "Number", + "field": "SessionStatisticsPlain.Score", + "type": "quantitative", + "aggregate": "max" + } + }, + "chartType": "Data Table", + "convertedFields": [], + "customisations": { + "options": { + "totalsColumn": { + "enabled": false, + "value": null + } + }, + "conditionalFormatting": [], + "axes": {}, + "channels": { + "group": { + "labelOverride": { + "enabled": true, + "value": "Player" + } + }, + "value": { + "labelOverride": { + "enabled": true, + "value": "Score" + }, + "numberFormatting": { + "enabled": true, + "value": "Default" + } + } + } + }, + "dashboardId": "dashboard-1", + "dataSourceId": "data-source-1", + "description": "", + "filters": [], + "iconValue": "data-table", + "interactiveFiltering": "filter", + "itemType": "chart", + "lookupFields": [], + "meta": { + "sortModel": [{ + "colId": "value", + "sort": "desc" + }], + "columnWidths": { + "group": 150 + } + }, + "missedFields": [], + "query": null, + "queryId": null, + "reductions": {}, + "sample": false, + "title": "Leaderboard", + "embedding": { + "anonymousAuthEnabled": true + } + } + }, + "dataSources": { + "data-source-1": { + "alias": "recordings", + "collection": "recordings", + "database": "Leafsteroids", + "deployment": "Leafsteroids--federated", + "sourceType": "datalake" + } + }, + "queries": {} +} \ No newline at end of file diff --git a/deployment/atlas_charts/Leafsteroids - Player Dashboard - Federated.charts b/deployment/atlas_charts/Leafsteroids - Player Dashboard - Federated.charts new file mode 100644 index 0000000..9cfecdf --- /dev/null +++ b/deployment/atlas_charts/Leafsteroids - Player Dashboard - Federated.charts @@ -0,0 +1,687 @@ +{ + "exportVersion": 6, + "dashboards": { + "dashboard-1": { + "description": "", + "embedding": { + "anonymousAuthEnabled": true, + "allowAllFieldsAnonymousAuth": false, + "anonymousAuthWhitelist": ["Player.Nickname", "location", "Event._id"] + }, + "filters": [{ + "type": "String", + "disabled": false, + "name": "Nickname", + "settings": { + "allOthers": false, + "values": ["Wolffles"] + }, + "linkedFields": [{ + "dataSourceId": "data-source-1", + "fieldPath": "Player.Nickname" + }] + }, { + "type": "String", + "disabled": false, + "name": "location", + "settings": { + "allOthers": false, + "values": ["US-CA"] + }, + "linkedFields": [{ + "dataSourceId": "data-source-1", + "fieldPath": "location" + }] + }, { + "type": "String", + "disabled": false, + "name": "_id", + "settings": { + "allOthers": false, + "values": ["gdc-2023-sf"] + }, + "linkedFields": [{ + "dataSourceId": "data-source-1", + "fieldPath": "Event._id" + }] + }], + "layout": [{ + "i": "item-1", + "w": 2, + "h": 2, + "x": 0, + "y": 2 + }, { + "i": "item-2", + "w": 1, + "h": 1, + "x": 0, + "y": 4 + }, { + "i": "item-3", + "w": 2, + "h": 4, + "x": 0, + "y": 8 + }, { + "i": "item-4", + "w": 2, + "h": 1, + "x": 0, + "y": 7 + }, { + "i": "item-5", + "w": 1, + "h": 1, + "x": 1, + "y": 4 + }, { + "i": "item-6", + "w": 2, + "h": 1, + "x": 0, + "y": 5 + }, { + "i": "item-7", + "w": 2, + "h": 2, + "x": 0, + "y": 0 + }, { + "i": "item-8", + "w": 2, + "h": 1, + "x": 0, + "y": 6 + }], + "title": "Leafsteroids - Player Dashboard" + } + }, + "items": { + "item-1": { + "calculatedFields": [], + "channels": { + "x": { + "channelType": "category", + "inferredType": "Number", + "field": "Snapshots.PlayerPosition.X", + "type": "nominal", + "transformedType": "Number", + "isBinning": true, + "quantitativeBinning": { + "binSize": 1 + } + }, + "y": { + "channelType": "category", + "inferredType": "Number", + "field": "Snapshots.PlayerPosition.Z", + "type": "nominal", + "transformedType": "Number", + "isBinning": true, + "quantitativeBinning": { + "binSize": 1 + } + }, + "color": { + "channelType": "aggregation", + "inferredType": "String", + "field": "_id", + "type": "quantitative", + "aggregate": "count" + } + }, + "chartType": "Heatmap", + "convertedFields": [], + "customisations": { + "options": { + "colorContinuous": { + "enabled": true, + "value": { + "color": "yelloworangered", + "reverse": false + } + } + }, + "conditionalFormatting": [], + "axes": { + "x": { + "categoryLabelAngle": { + "enabled": true, + "value": "vertical" + } + } + }, + "channels": { + "x": { + "numberFormatting": { + "enabled": true, + "value": "Default" + } + }, + "y": { + "numberFormatting": { + "enabled": true, + "value": "Default" + } + }, + "color": { + "numberFormatting": { + "enabled": true, + "value": "Default" + } + } + } + }, + "dashboardId": "dashboard-1", + "dataSourceId": "data-source-1", + "description": "", + "filters": [], + "iconValue": "heatmap", + "interactiveFiltering": "highlight", + "itemType": "chart", + "lookupFields": [], + "meta": {}, + "missedFields": [], + "query": null, + "queryId": null, + "reductions": { + "x": [{ + "dimensionality": 1, + "field": "Snapshots", + "type": "Unwind array", + "arguments": [] + }], + "y": [{ + "dimensionality": 1, + "field": "Snapshots", + "type": "Unwind array", + "arguments": [] + }] + }, + "sample": false, + "title": "Heat Map: Player Location", + "embedding": {} + }, + "item-2": { + "calculatedFields": [], + "channels": { + "value": { + "channelType": "aggregation", + "inferredType": "String", + "field": "_id", + "type": "quantitative", + "aggregate": "count" + } + }, + "chartType": "Number", + "convertedFields": [], + "customisations": { + "options": {}, + "conditionalFormatting": [], + "axes": {}, + "channels": { + "value": { + "numberFormatting": { + "enabled": true, + "value": "Default" + } + } + } + }, + "dashboardId": "dashboard-1", + "dataSourceId": "data-source-1", + "description": "", + "filters": [], + "iconValue": "number", + "interactiveFiltering": "highlight", + "itemType": "chart", + "lookupFields": [], + "meta": {}, + "missedFields": [], + "query": null, + "queryId": null, + "reductions": {}, + "sample": false, + "title": "Games Played", + "embedding": {} + }, + "item-3": { + "calculatedFields": [], + "channels": { + "value": { + "channelType": "aggregation", + "inferredType": "Number", + "field": "SessionStatisticsPlain.Score", + "type": "quantitative", + "aggregate": "max" + }, + "group": { + "channelType": "category", + "inferredType": "Date", + "field": "DateTime", + "type": "nominal", + "isBinning": true, + "temporalBinning": ["year", "month", "date", "hours", "minutes"] + } + }, + "chartType": "Data Table", + "convertedFields": [], + "customisations": { + "options": { + "totalsColumn": { + "enabled": false, + "value": null + } + }, + "conditionalFormatting": [], + "axes": {}, + "channels": { + "value": { + "labelOverride": { + "enabled": true, + "value": "Score" + }, + "numberFormatting": { + "enabled": true, + "value": "Default" + } + }, + "group": { + "dateTimeFormatting": { + "enabled": true, + "value": "DD-MMM-YYYY HH:mm" + } + } + } + }, + "dashboardId": "dashboard-1", + "dataSourceId": "data-source-1", + "description": "", + "filters": [], + "iconValue": "data-table", + "interactiveFiltering": "highlight", + "itemType": "chart", + "lookupFields": [], + "meta": { + "sortModel": [{ + "colId": "value", + "sort": "desc" + }], + "columnWidths": {} + }, + "missedFields": [], + "query": "{ DateTime: { $gt: ISODate(\"2023-03-23T09:00:00.000000Z\") } }", + "queryId": null, + "reductions": {}, + "sample": false, + "title": "Game Plays", + "embedding": {} + }, + "item-4": { + "calculatedFields": [], + "channels": { + "x_series_0": { + "channelType": "aggregation", + "inferredType": "Number", + "field": "SessionStatisticsPlain.PelletsDestroyedMedium", + "type": "quantitative", + "aggregate": "sum" + }, + "x_series_1": { + "channelType": "aggregation", + "inferredType": "Number", + "field": "SessionStatisticsPlain.PelletsDestroyedSmall", + "type": "quantitative", + "aggregate": "sum" + }, + "x": { + "channelType": "aggregation", + "inferredType": "Number", + "field": "SessionStatisticsPlain.PelletsDestroyedLarge", + "type": "quantitative", + "aggregate": "sum" + } + }, + "chartType": "Grouped Bar", + "convertedFields": [], + "customisations": { + "axes": { + "x": { + "labelOverride": { + "enabled": true, + "value": "Amount" + } + } + }, + "conditionalFormatting": [], + "channels": { + "x": { + "labelOverride": { + "enabled": true, + "value": "Large" + }, + "numberFormatting": { + "enabled": true, + "value": "Default" + } + }, + "x_series_0": { + "labelOverride": { + "enabled": true, + "value": "Medium" + }, + "numberFormatting": { + "enabled": true, + "value": "Default" + } + }, + "x_series_1": { + "labelOverride": { + "enabled": true, + "value": "Small" + }, + "numberFormatting": { + "enabled": true, + "value": "Default" + } + } + }, + "options": {} + }, + "dashboardId": "dashboard-1", + "dataSourceId": "data-source-1", + "description": "", + "filters": [], + "iconValue": "bar-grouped", + "interactiveFiltering": "highlight", + "itemType": "chart", + "lookupFields": [], + "meta": {}, + "missedFields": [], + "query": null, + "queryId": null, + "reductions": {}, + "sample": false, + "title": "Pellets Destroyed", + "embedding": {} + }, + "item-5": { + "calculatedFields": [], + "channels": { + "value": { + "channelType": "aggregation", + "inferredType": "Number", + "field": "SessionStatisticsPlain.BulletsFired", + "type": "quantitative", + "aggregate": "sum" + } + }, + "chartType": "Number", + "convertedFields": [], + "customisations": { + "options": {}, + "axes": {}, + "channels": { + "value": { + "numberFormatting": { + "enabled": true, + "value": "Default" + } + } + }, + "conditionalFormatting": [] + }, + "dashboardId": "dashboard-1", + "dataSourceId": "data-source-1", + "description": "", + "filters": [], + "iconValue": "number", + "interactiveFiltering": "highlight", + "itemType": "chart", + "lookupFields": [], + "meta": {}, + "missedFields": [], + "query": null, + "queryId": null, + "reductions": {}, + "sample": false, + "title": "Total Bullets Fired", + "embedding": {} + }, + "item-6": { + "calculatedFields": [], + "channels": { + "value": { + "channelType": "aggregation", + "inferredType": "Number", + "field": "SessionStatisticsPlain.DamageDone", + "type": "quantitative", + "aggregate": "sum" + } + }, + "chartType": "Number", + "convertedFields": [], + "customisations": { + "options": {}, + "conditionalFormatting": [], + "axes": {}, + "channels": { + "value": { + "numberFormatting": { + "enabled": true, + "value": "Default" + } + } + } + }, + "dashboardId": "dashboard-1", + "dataSourceId": "data-source-1", + "description": "", + "filters": [], + "iconValue": "number", + "interactiveFiltering": "highlight", + "itemType": "chart", + "lookupFields": [], + "meta": {}, + "missedFields": [], + "query": null, + "queryId": null, + "reductions": {}, + "sample": false, + "title": "Total Damage", + "embedding": {} + }, + "item-7": { + "calculatedFields": [], + "channels": { + "x": { + "channelType": "category", + "inferredType": "Date", + "field": "DateTime", + "type": "nominal", + "isBinning": true, + "temporalBinning": ["year", "month", "date", "hours", "minutes"] + }, + "y": { + "channelType": "aggregation", + "inferredType": "Number", + "field": "SessionStatisticsPlain.Score", + "type": "quantitative", + "aggregate": "max" + } + }, + "chartType": "Line", + "convertedFields": [{ + "fieldPath": "DateTime", + "convertTo": "date", + "arrayParentPaths": [] + }], + "customisations": { + "options": { + "colorDiscrete": { + "enabled": true, + "value": ["#196ee6"] + }, + "dataMarkers": { + "enabled": true, + "value": null + }, + "dataValueLabels": { + "enabled": true, + "value": null + } + }, + "conditionalFormatting": [], + "axes": { + "x": { + "categoryLabelAngle": { + "enabled": true, + "value": "vertical" + } + }, + "y": {} + }, + "channels": { + "x": { + "labelOverride": { + "enabled": true, + "value": "Time" + }, + "datePreset": { + "enabled": true, + "value": "Custom" + }, + "minutePreset": { + "enabled": true, + "value": "Custom" + }, + "dateTimeFormatting": { + "enabled": true, + "value": "HH:mm" + } + }, + "y": { + "labelOverride": { + "enabled": true, + "value": "Score" + }, + "numberFormatting": { + "enabled": true, + "value": "Default" + } + } + } + }, + "dashboardId": "dashboard-1", + "dataSourceId": "data-source-1", + "description": "", + "filters": [], + "iconValue": "line-discrete", + "interactiveFiltering": "highlight", + "itemType": "chart", + "lookupFields": [], + "meta": {}, + "missedFields": [], + "query": null, + "queryId": null, + "reductions": {}, + "sample": false, + "title": "Player Activity", + "embedding": {} + }, + "item-8": { + "calculatedFields": [], + "channels": { + "x": { + "channelType": "aggregation", + "inferredType": "Number", + "field": "SessionStatisticsPlain.PowerUpBulletDamageCollected", + "type": "quantitative", + "aggregate": "sum" + }, + "x_series_0": { + "channelType": "aggregation", + "inferredType": "Number", + "field": "SessionStatisticsPlain.PowerUpBulletSpeedCollected", + "type": "quantitative", + "aggregate": "sum" + }, + "x_series_1": { + "channelType": "aggregation", + "inferredType": "Number", + "field": "SessionStatisticsPlain.PowerUpPlayerSpeedCollected", + "type": "quantitative", + "aggregate": "sum" + } + }, + "chartType": "Grouped Bar", + "convertedFields": [], + "customisations": { + "options": {}, + "conditionalFormatting": [], + "axes": { + "x": {} + }, + "channels": { + "x": { + "labelOverride": { + "enabled": true, + "value": "Bullet Damage" + }, + "numberFormatting": { + "enabled": true, + "value": "Default" + } + }, + "x_series_0": { + "labelOverride": { + "enabled": true, + "value": "Bullet Speed" + }, + "numberFormatting": { + "enabled": true, + "value": "Default" + } + }, + "x_series_1": { + "labelOverride": { + "enabled": true, + "value": "Player Speed" + }, + "numberFormatting": { + "enabled": true, + "value": "Default" + } + } + } + }, + "dashboardId": "dashboard-1", + "dataSourceId": "data-source-1", + "description": "", + "filters": [], + "iconValue": "bar-grouped", + "interactiveFiltering": "highlight", + "itemType": "chart", + "lookupFields": [], + "meta": {}, + "missedFields": [], + "query": null, + "queryId": null, + "reductions": {}, + "sample": false, + "title": "Power Ups Collected", + "embedding": {} + } + }, + "dataSources": { + "data-source-1": { + "alias": "recordings", + "collection": "recordings", + "database": "Leafsteroids", + "deployment": "Leafsteroids--federated", + "sourceType": "datalake" + } + }, + "queries": {} +} \ No newline at end of file diff --git a/deployment/game_database/data_tiering/data_federation_config.json b/deployment/game_database/data_tiering/data_federation_config.json new file mode 100644 index 0000000..155f76b --- /dev/null +++ b/deployment/game_database/data_tiering/data_federation_config.json @@ -0,0 +1,41 @@ +{ + "databases": [ + { + "collections": [ + { + "name": "recordings", + "dataSources": [ + { + "collection": "recordings", + "database": "Leafsteroids", + "storeName": "demo" + }, + { + "datasetName": "v1$atlas$archive$demo$Leafsteroids$3ee18b87-dc43-4ac6-a393-44fee2aa11d2$64e6af7091174970cc3fbb4a", + "storeName": "aws-dls-store-us-east-1" + } + ] + } + ], + "name": "Leafsteroids", + "views": [] + } + ], + "stores": [ + { + "clusterName": "demo", + "name": "demo", + "projectId": "5ead7a92758e00636bc31452", + "provider": "atlas", + "readPreference": { + "mode": "secondaryPreferred", + "tagSets": [] + } + }, + { + "name": "aws-dls-store-us-east-1", + "provider": "dls:aws", + "region": "us-east-1" + } + ] +} \ No newline at end of file diff --git a/deployment/game_database/data_tiering/online_archive_config.json b/deployment/game_database/data_tiering/online_archive_config.json new file mode 100644 index 0000000..4d708a2 --- /dev/null +++ b/deployment/game_database/data_tiering/online_archive_config.json @@ -0,0 +1,49 @@ +{ + "_id": "64e6af7091174970cc3fbb4a", + "clusterName": "demo", + "collName": "recordings", + "collectionType": "STANDARD", + "criteria": { + "dateField": "DateTime", + "dateFormat": "ISODATE", + "expireAfterDays": 30, + "type": "DATE" + }, + "dataExpirationRule": { + "expireAfterDays": 1825 + }, + "dataProcessRegion": { + "cloudProvider": "AWS", + "region": "US_EAST_1" + }, + "dataSetName": "v1$atlas$archive$demo$Leafsteroids$3ee18b87-dc43-4ac6-a393-44fee2aa11d2$64e6af7091174970cc3fbb4a", + "dbName": "Leafsteroids", + "groupId": "5ead7a92758e00636bc31452", + "lastArchiveRun": { + "endDate": "2023-08-24T06:54:38Z", + "errorMessage": null, + "startDate": "2023-08-24T06:54:38Z" + }, + "partitionFields": [{ + "fieldName": "location", + "fieldType": null, + "order": 0 + }, { + "fieldName": "Event._id", + "fieldType": null, + "order": 1 + }, { + "fieldName": "DateTime", + "fieldType": null, + "order": 2 + }], + "paused": false, + "schedule": { + "endHour": 0, + "endMinute": 0, + "startHour": 18, + "startMinute": 20, + "type": "DAILY" + }, + "state": "ACTIVE" +} \ No newline at end of file diff --git a/deployment/game_database/indexes.js b/deployment/game_database/indexes.js new file mode 100644 index 0000000..6570b5c --- /dev/null +++ b/deployment/game_database/indexes.js @@ -0,0 +1 @@ +db.recordings.createIndex({ DateTime: 1 }); \ No newline at end of file diff --git a/website/Pages/Index.razor b/website/Pages/Index.razor index 7c6fc0a..9c5a9e4 100644 --- a/website/Pages/Index.razor +++ b/website/Pages/Index.razor @@ -148,7 +148,7 @@ DotEnv.Load(); var envVars = DotEnv.Read(); var atlasChartIdHome = envVars["ATLAS_CHART_ID_HOME"]; - + _chartUrl = ChartsUrl.CreateHomeUrl(atlasChartIdHome, _event!.Id!, _event.Location!); } diff --git a/website/Pages/_Host.cshtml b/website/Pages/_Host.cshtml index f1f4fcc..2a2fb45 100644 --- a/website/Pages/_Host.cshtml +++ b/website/Pages/_Host.cshtml @@ -31,18 +31,18 @@
-