From 521e76cf1b47a6e3fe651a6128a15f07743e5d2c Mon Sep 17 00:00:00 2001
From: Guillaume Rousse <guillaume.rousse@renater.fr>
Date: Fri, 2 Mar 2018 12:10:35 +0100
Subject: [PATCH] warn instead of crashing when logging is not configured

---
 conf/manager.conf.in      |  2 +-
 lib/AccountManager/App.pm | 14 +++++++++-----
 2 files changed, 10 insertions(+), 6 deletions(-)

diff --git a/conf/manager.conf.in b/conf/manager.conf.in
index 66286dd..016a39f 100644
--- a/conf/manager.conf.in
+++ b/conf/manager.conf.in
@@ -19,7 +19,7 @@ version = open Beta 1
 url = https://my.fqdn/accountmanager
 support_email = support@my.fqdn
 
-[log]
+[logger]
 file = /opt/testidp/IdPAccountManager/log/manager.log
 level = info
 
diff --git a/lib/AccountManager/App.pm b/lib/AccountManager/App.pm
index 7dc1af6..d68d16a 100644
--- a/lib/AccountManager/App.pm
+++ b/lib/AccountManager/App.pm
@@ -41,11 +41,15 @@ sub new {
         configuration => $args{configuration},
     };
 
-    Log::Any::Adapter->set(
-        'File',
-        $self->{configuration}->{log}->{file},
-        log_level => $self->{configuration}->{log}->{level}
-    );
+    if ($self->{configuration}->{logger}) {
+        Log::Any::Adapter->set(
+            'File',
+            $self->{configuration}->{log}->{file},
+            log_level => $self->{configuration}->{log}->{level}
+        );
+    } else {
+        warn "no logger defined in configuration, logging disabled\n";
+    }
 
     $self->{logger} = Log::Any->get_logger();
 
-- 
GitLab