aboutsummaryrefslogtreecommitdiffstats
path: root/vespalog/src/main
diff options
context:
space:
mode:
authorJon Marius Venstad <jvenstad@yahoo-inc.com>2018-08-16 16:51:06 +0200
committerJon Marius Venstad <jvenstad@yahoo-inc.com>2018-08-16 16:51:06 +0200
commita62a3b47817ebb52f8ea4413d37804d4da459171 (patch)
treed63616ed896cd9b6d86c99fe5f211c50c7576c7d /vespalog/src/main
parent47f77d0c8a94c3adb8389b581cacf24c03aa4290 (diff)
Look for upper case log levels by modifying the search term
Diffstat (limited to 'vespalog/src/main')
-rw-r--r--vespalog/src/main/java/com/yahoo/log/LogLevel.java19
1 files changed, 10 insertions, 9 deletions
diff --git a/vespalog/src/main/java/com/yahoo/log/LogLevel.java b/vespalog/src/main/java/com/yahoo/log/LogLevel.java
index f9cc4e9b7e3..daf2a0ff44d 100644
--- a/vespalog/src/main/java/com/yahoo/log/LogLevel.java
+++ b/vespalog/src/main/java/com/yahoo/log/LogLevel.java
@@ -1,6 +1,7 @@
// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.log;
+import java.nio.charset.StandardCharsets;
import java.util.HashMap;
import java.util.Map;
import java.util.LinkedHashMap;
@@ -104,21 +105,13 @@ public class LogLevel extends Level {
// manually enter the valid log levels we shall recognize in VESPA
nameToLevel = new LinkedHashMap<String, Level>(32);
nameToLevel.put("fatal", FATAL);
- nameToLevel.put("FATAL", FATAL);
nameToLevel.put("error", ERROR);
- nameToLevel.put("ERROR", ERROR);
nameToLevel.put("warning", WARNING);
- nameToLevel.put("WARNING", WARNING);
nameToLevel.put("config", CONFIG);
- nameToLevel.put("CONFIG", CONFIG);
nameToLevel.put("info", INFO);
- nameToLevel.put("INFO", INFO);
nameToLevel.put("event", EVENT);
- nameToLevel.put("EVENT", EVENT);
nameToLevel.put("debug", DEBUG);
- nameToLevel.put("DEBUG", DEBUG);
nameToLevel.put("spam", SPAM);
- nameToLevel.put("SPAM", SPAM);
}
private LogLevel(String name, int value) {
@@ -139,7 +132,15 @@ public class LogLevel extends Level {
public static Level parse(String name) {
Level l = nameToLevel.get(name);
if (l == null) {
- return UNKNOWN;
+ // If name was not found, try changing the case of each character from (assumed) upper to lower:
+ byte[] nameBytes = name.getBytes(StandardCharsets.UTF_8);
+ for (int i = 0; i < nameBytes.length; i++)
+ nameBytes[i] += 32;
+ l = nameToLevel.get(new String(nameBytes));
+
+ if (l == null) {
+ return UNKNOWN;
+ }
}
return l;
}