From ecfd7051c8a1f297de5190f5551e303459f35de4 Mon Sep 17 00:00:00 2001
From: Janne Mareike Koschinski <janne@kuschku.de>
Date: Fri, 13 May 2022 21:24:22 +0200
Subject: [PATCH] fix: improve error logging

---
 backend/main.go  | 2 ++
 frontend/main.go | 2 ++
 shared/error.go  | 9 +++++++++
 3 files changed, 13 insertions(+)
 create mode 100644 shared/error.go

diff --git a/backend/main.go b/backend/main.go
index 1df18f8..ff30068 100644
--- a/backend/main.go
+++ b/backend/main.go
@@ -24,6 +24,8 @@ var imageProcessDurationResize = imageProcessDuration.WithLabelValues("resize")
 var imageProcessDurationWrite = imageProcessDuration.WithLabelValues("write")
 
 func main() {
+	defer shared.ErrorHandler()
+
 	configFile, err := os.Open("config.yaml")
 	if err != nil {
 		log.Fatalf("error opening config file: %s", err.Error())
diff --git a/frontend/main.go b/frontend/main.go
index a6896aa..31ef614 100644
--- a/frontend/main.go
+++ b/frontend/main.go
@@ -12,6 +12,8 @@ import (
 )
 
 func main() {
+	defer shared.ErrorHandler()
+
 	configFile, err := os.Open("config.yaml")
 	if err != nil {
 		log.Fatalf("error opening config file: %s", err.Error())
diff --git a/shared/error.go b/shared/error.go
new file mode 100644
index 0000000..20def71
--- /dev/null
+++ b/shared/error.go
@@ -0,0 +1,9 @@
+package shared
+
+import "log"
+
+func ErrorHandler() {
+	if err := recover(); err != nil {
+		log.Fatalf("error occured unexpectedly: %s", err)
+	}
+}
-- 
GitLab