From d4a56be902dbeb207344f6b14723a6635a66f631 Mon Sep 17 00:00:00 2001
From: Will Hunt <half-shot@molrams.com>
Date: Wed, 22 Feb 2017 22:11:44 +0000
Subject: [PATCH] Add support for setting a log level in the config.

---
 config/config.sample.yaml |  2 ++
 config/config.schema.yaml |  6 ++++++
 src/config.ts             | 10 ++++------
 src/discordas.ts          |  1 +
 4 files changed, 13 insertions(+), 6 deletions(-)

diff --git a/config/config.sample.yaml b/config/config.sample.yaml
index 8fb83dc..861f013 100644
--- a/config/config.sample.yaml
+++ b/config/config.sample.yaml
@@ -5,3 +5,5 @@ auth:
   clientID: 12345 # Get from discord
   secret: blah
   botToken: foobar
+logging:
+  level: "warn" #silly, verbose, info, http, warn, error
diff --git a/config/config.schema.yaml b/config/config.schema.yaml
index 798771b..14dbddd 100644
--- a/config/config.schema.yaml
+++ b/config/config.schema.yaml
@@ -20,3 +20,9 @@ properties:
             type: "string"
           botToken:
             type: "string"
+    logging:
+        type: "object"
+        required: ["level"]
+        properties:
+          level:
+            type: "string"
diff --git a/src/config.ts b/src/config.ts
index d2c7779..d5b266c 100644
--- a/src/config.ts
+++ b/src/config.ts
@@ -3,7 +3,7 @@
 export class DiscordBridgeConfig {
   public bridge: DiscordBridgeConfigBridge;
   public auth: DiscordBridgeConfigAuth;
-  public guilds: DiscordBridgeConfigGuilds[];
+  public logging: DiscordBridgeConfigLogging;
 }
 
 class DiscordBridgeConfigBridge {
@@ -11,13 +11,11 @@ class DiscordBridgeConfigBridge {
   public homeserverUrl: string;
 }
 
-class DiscordBridgeConfigAuth {
+export class DiscordBridgeConfigAuth {
   public clientID: string;
   public secret: string;
   public botToken: string;
 }
-
-class DiscordBridgeConfigGuilds {
-  public id: string;
-  public aliasName: string;
+class DiscordBridgeConfigLogging {
+  public level: string;
 }
diff --git a/src/discordas.ts b/src/discordas.ts
index 9a2fab7..1b58079 100644
--- a/src/discordas.ts
+++ b/src/discordas.ts
@@ -34,6 +34,7 @@ function generateRegistration(reg, callback)  {
 }
 
 function run (port: number, config: DiscordBridgeConfig) {
+  log.level = config.logging ? (config.logging.level || "warn") : "warn";
   log.info("discordas", "Starting Discord AS");
   const yamlConfig = yaml.safeLoad(fs.readFileSync("discord-registration.yaml", "utf8"));
   const registration = AppServiceRegistration.fromObject(yamlConfig);
-- 
GitLab