diff --git a/project/the_gates/scripts/analytics/analytics.gd b/project/the_gates/scripts/analytics/analytics.gd index 4175095..76f7823 100644 --- a/project/the_gates/scripts/analytics/analytics.gd +++ b/project/the_gates/scripts/analytics/analytics.gd @@ -3,6 +3,7 @@ extends Node var backend := preload("res://the_gates/resources/backend.tres") var analytics_senders = [ + AnalyticsSenderError.new(), AnalyticsSenderGate.new(), AnalyticsSenderApp.new() ] diff --git a/project/the_gates/scripts/analytics/analytics_events.gd b/project/the_gates/scripts/analytics/analytics_events.gd index 76a51b4..13c1e87 100644 --- a/project/the_gates/scripts/analytics/analytics_events.gd +++ b/project/the_gates/scripts/analytics/analytics_events.gd @@ -49,3 +49,11 @@ func gate_exit(url: String, time_spend: int) -> Dictionary: event.gate_url = url event.time_spend = time_spend return event + + +# ERROR + +func error(msg: String) -> Dictionary: + var event = base("error") + event.msg = msg + return event diff --git a/project/the_gates/scripts/analytics/analytics_sender_error.gd b/project/the_gates/scripts/analytics/analytics_sender_error.gd new file mode 100644 index 0000000..f198a96 --- /dev/null +++ b/project/the_gates/scripts/analytics/analytics_sender_error.gd @@ -0,0 +1,10 @@ +extends Node +class_name AnalyticsSenderError + + +func _ready() -> void: + Debug.error.connect(send_error) + + +func send_error(msg: String) -> void: + Analytics.send_event(AnalyticsEvents.error(msg)) diff --git a/project/the_gates/scripts/debug-log/debug.gd b/project/the_gates/scripts/debug-log/debug.gd index 690ce9f..5fcb945 100644 --- a/project/the_gates/scripts/debug-log/debug.gd +++ b/project/the_gates/scripts/debug-log/debug.gd @@ -1,6 +1,7 @@ extends Node signal logged(msg: String) +signal error(msg: String) func logr(msg) -> void: @@ -12,6 +13,7 @@ func logerr(msg) -> void: printerr(str(msg)) var rich_clr = "[color=%s]%s[/color]" % [Color.RED.to_html(), str(msg)] logged.emit(rich_clr) + error.emit(msg) func logclr(msg, color: Color) -> void: