mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-07-15 17:13:46 +01:00
SSmetrics - Elasticsearch powered metrics viewing
This commit is contained in:
@@ -12,6 +12,7 @@
|
||||
#include "spawn_humans.dm"
|
||||
#include "sql.dm"
|
||||
#include "subsystem_init.dm"
|
||||
#include "subsystem_metric_sanity.dm"
|
||||
#include "timer_sanity.dm"
|
||||
#include "unit_test.dm"
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
// Unit test to ensure SS metrics are valid
|
||||
/datum/unit_test/subsystem_metric_sanity/Run()
|
||||
for(var/datum/controller/subsystem/SS in Master.subsystems)
|
||||
var/list/data = SS.get_metrics()
|
||||
if(length(data) != 3)
|
||||
Fail("SS[SS.ss_id] has invalid metrics data!")
|
||||
continue
|
||||
if(isnull(data["cost"]))
|
||||
Fail("SS[SS.ss_id] has invalid metrics data! No 'cost' found in [json_encode(data)]")
|
||||
continue
|
||||
if(isnull(data["tick_usage"]))
|
||||
Fail("SS[SS.ss_id] has invalid metrics data! No 'tick_usage' found in [json_encode(data)]")
|
||||
continue
|
||||
if(isnull(data["custom"]))
|
||||
Fail("SS[SS.ss_id] has invalid metrics data! No 'custom' found in [json_encode(data)]")
|
||||
continue
|
||||
if(!islist(data["custom"]))
|
||||
Fail("SS[SS.ss_id] has invalid metrics data! 'custom' is not a list in [json_encode(data)]")
|
||||
continue
|
||||
Reference in New Issue
Block a user