Skip to content

Commit ddb81ec

Browse files
authored
fix: Fix log level setting to handle --verbose (serverless#475)
1 parent f9065e6 commit ddb81ec

File tree

2 files changed

+20
-13
lines changed

2 files changed

+20
-13
lines changed

src/services/loggingService.test.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,9 +46,9 @@ describe("Logging Service", () => {
4646
expect(sls.cli.log).lastCalledWith("[ERROR] Error");
4747
});
4848

49-
it("empty string as option value sets logging level to debug", () => {
49+
it("boolean as option value sets logging level to debug", () => {
5050
const sls = MockFactory.createTestServerless();
51-
loggingService = createService(sls, {"verbose": ""});
51+
loggingService = createService(sls, {"verbose": true});
5252
loggingService.debug("Debug");
5353
expect(sls.cli.log).toBeCalledWith("[DEBUG] Debug");
5454
});

src/services/loggingService.ts

Lines changed: 18 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -22,18 +22,25 @@ export class LoggingService {
2222
private logLevel: LogLevel;
2323

2424
public constructor(private serverless: Serverless, private options: ServerlessAzureOptions) {
25-
26-
// Check for 'verbose' or 'v'. Would use the sls shortcuts at the plugin level,
27-
// but this will be utilized across the plugins, so we check for both
28-
const logLevelStr = Utils.get(options, "verbose");
25+
const verbosity = Utils.get(options, "verbose");
26+
const defaultLogLevel = LogLevel.INFO;
2927

30-
this.logLevel = (logLevelStr !== undefined) ? Utils.get({
31-
"error": LogLevel.ERROR,
32-
"warn": LogLevel.WARN,
33-
"info": LogLevel.INFO,
34-
"debug": LogLevel.DEBUG,
35-
"": LogLevel.DEBUG
36-
}, logLevelStr.toLowerCase()) : LogLevel.INFO;
28+
if (verbosity === true) {
29+
// --verbose flag is passed with no specified level
30+
this.logLevel = LogLevel.DEBUG;
31+
} else if (typeof verbosity === "string") {
32+
// --verbose {level} is passed
33+
this.logLevel = Utils.get({
34+
"error": LogLevel.ERROR,
35+
"warn": LogLevel.WARN,
36+
"info": LogLevel.INFO,
37+
"debug": LogLevel.DEBUG,
38+
"": LogLevel.DEBUG
39+
}, verbosity.toLowerCase(), defaultLogLevel);
40+
} else {
41+
// --verbose not passed, use default
42+
this.logLevel = defaultLogLevel;
43+
}
3744
}
3845

3946
/**

0 commit comments

Comments
 (0)