Skip to content

Commit 922f61f

Browse files
committed
Rename razor.trace to razor.server.trace, and use LogLevel values, to match Roslyn (and VS Code conventions)
1 parent 7c7bada commit 922f61f

14 files changed

+93
-79
lines changed

CONTRIBUTING.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ https://github.com/dotnet/razor contains the server implementation. Follow the
3939

4040
depending on which configuration is built. Then, launch the extension here and change the VSCode setting `razor.languageServer.directory` to point to the Razor executable path you built above and reload the window.
4141

42-
If you need to debug the server, you can set the VSCode setting `razor.languageServer.debug` to true. This will trigger a `Debugger.Launch()` on the server side as it starts. You can also set `razor.trace` to `Verbose` to get more log messages in the output window
42+
If you need to debug the server, you can set the VSCode setting `razor.languageServer.debug` to true. This will trigger a `Debugger.Launch()` on the server side as it starts. You can also set `razor.server.trace` to `Debug` to get more log messages in the output window
4343

4444
### Creating VSIXs
4545

@@ -52,4 +52,4 @@ To update the version of the roslyn server used by the extension do the followin
5252
2. In the official build stage, look for the `Publish Assets` step. In there you will see it publishing the `Microsoft.CodeAnalysis.LanguageServer.neutral` package with some version, e.g. `4.6.0-3.23158.4`. Take note of that version number.
5353
3. In the [package.json](package.json) inside the `defaults` section update the `roslyn` key to point to the version number you found above in step 2.
5454
4. Ensure that version of the package is in the proper feeds by running `gulp updateRoslynVersion`. Note: you may need to install the [Azure Artifacts NuGet Credential Provider](https://github.com/microsoft/artifacts-credprovider#installation-on-windows) to run interactive authentication.
55-
5. Build and test the change. If everything looks good, submit a PR.
55+
5. Build and test the change. If everything looks good, submit a PR.

l10n/bundle.l10n.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@
4747
"Downloading Razor Telemetry Package": "Downloading Razor Telemetry Package",
4848
"Cannot load Razor language server because the directory was not found: '{0}'": "Cannot load Razor language server because the directory was not found: '{0}'",
4949
"Could not find '{0}' in or above '{1}'.": "Could not find '{0}' in or above '{1}'.",
50-
"Invalid trace setting for Razor language server. Defaulting to '{0}'": "Invalid trace setting for Razor language server. Defaulting to '{0}'",
50+
"Invalid razor.server.trace setting. Defaulting to '{0}'": "Invalid razor.server.trace setting. Defaulting to '{0}'",
5151
"Could not find Razor Language Server executable within directory '{0}'": "Could not find Razor Language Server executable within directory '{0}'",
5252
"Server failed to start after retrying 5 times.": "Server failed to start after retrying 5 times.",
5353
"Razor Language Server failed to start unexpectedly, please check the 'Razor Log' and report an issue.": "Razor Language Server failed to start unexpectedly, please check the 'Razor Log' and report an issue.",

package.json

Lines changed: 12 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1751,21 +1751,20 @@
17511751
"description": "%configuration.razor.languageServer.debug%",
17521752
"order": 90
17531753
},
1754-
"razor.trace": {
1754+
"razor.server.trace": {
1755+
"scope": "window",
17551756
"type": "string",
1756-
"default": "Off",
17571757
"enum": [
1758-
"Off",
1759-
"Messages",
1760-
"Verbose"
1761-
],
1762-
"enumDescriptions": [
1763-
"%configuration.razor.trace.off%",
1764-
"%configuration.razor.trace.messages%",
1765-
"%configuration.razor.trace.verbose%"
1758+
"Trace",
1759+
"Debug",
1760+
"Information",
1761+
"Warning",
1762+
"Error",
1763+
"Critical",
1764+
"None"
17661765
],
1767-
"description": "%configuration.razor.trace%",
1768-
"order": 90
1766+
"default": "Information",
1767+
"description": "%configuration.razor.server.trace%"
17691768
}
17701769
}
17711770
},
@@ -5696,4 +5695,4 @@
56965695
}
56975696
]
56985697
}
5699-
}
5698+
}

src/razor/src/diagnostics/reportIssuePanel.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
import * as vscode from 'vscode';
77
import { RazorLogger } from '../razorLogger';
8-
import { Trace } from '../trace';
8+
import { LogLevel } from '../logLevel';
99
import { ReportIssueCreator } from './reportIssueCreator';
1010
import { ReportIssueDataCollector } from './reportIssueDataCollector';
1111
import { ReportIssueDataCollectorFactory } from './reportIssueDataCollectorFactory';
@@ -118,7 +118,7 @@ export class ReportIssuePanel {
118118
}
119119

120120
let panelBodyContent = '';
121-
if (this.logger.trace.valueOf() === Trace.Verbose) {
121+
if (this.logger.logLevel.valueOf() <= LogLevel.Debug) {
122122
const startButtonLabel = vscode.l10n.t('Start');
123123
const startButton = `<button onclick="startIssue()">${startButtonLabel}</button>`;
124124
const firstLine = vscode.l10n.t('Press {0}', startButton);
@@ -157,8 +157,8 @@ ${privacyAnchor}
157157
<button onclick="copyIssue()">${copyIssueContentLabel}</button>`;
158158
} else {
159159
const verbositySettingName = `<strong><em>${RazorLogger.verbositySetting}</em></strong>`;
160-
const currentVerbositySettingValue = `<strong><em>${Trace[this.logger.trace]}</em></strong>`;
161-
const neededVerbositySettingValue = `<strong><em>${Trace[Trace.Verbose]}</em></strong>`;
160+
const currentVerbositySettingValue = `<strong><em>${LogLevel[this.logger.logLevel]}</em></strong>`;
161+
const neededVerbositySettingValue = `<strong><em>${LogLevel[LogLevel.Debug]}</em></strong>`;
162162

163163
panelBodyContent =
164164
'<p>' +

src/razor/src/extension.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ import { ProposedApisFeature } from './proposedApisFeature';
3636
import { RazorLanguage } from './razorLanguage';
3737
import { RazorLanguageConfiguration } from './razorLanguageConfiguration';
3838
import { RazorLanguageServerClient } from './razorLanguageServerClient';
39-
import { resolveRazorLanguageServerTrace } from './razorLanguageServerTraceResolver';
39+
import { resolveRazorLanguageServerLogLevel } from './razorLanguageServerTraceResolver';
4040
import { RazorLanguageServiceClient } from './razorLanguageServiceClient';
4141
import { RazorLogger } from './razorLogger';
4242
import { RazorReferenceProvider } from './reference/razorReferenceProvider';
@@ -71,14 +71,14 @@ export async function activate(
7171
create: <T>() => new vscode.EventEmitter<T>(),
7272
};
7373

74-
const languageServerTrace = resolveRazorLanguageServerTrace(vscodeType);
75-
const logger = new RazorLogger(eventEmitterFactory, languageServerTrace);
74+
const languageServerLogLevel = resolveRazorLanguageServerLogLevel(vscodeType);
75+
const logger = new RazorLogger(eventEmitterFactory, languageServerLogLevel);
7676

7777
try {
7878
const razorOptions: RazorLanguageServerOptions = resolveRazorLanguageServerOptions(
7979
vscodeType,
8080
languageServerDir,
81-
languageServerTrace,
81+
languageServerLogLevel,
8282
logger
8383
);
8484

src/razor/src/trace.ts renamed to src/razor/src/logLevel.ts

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,12 @@
33
* Licensed under the MIT License. See License.txt in the project root for license information.
44
*--------------------------------------------------------------------------------------------*/
55

6-
export enum Trace {
7-
Off = 0,
8-
Messages = 1,
9-
Verbose = 2,
6+
export enum LogLevel {
7+
Trace = 0,
8+
Debug = 1,
9+
Information = 2,
10+
Warning = 3,
11+
Error = 4,
12+
Critical = 5,
13+
None = 6,
1014
}

src/razor/src/razorLanguageServerClient.ts

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ import { LanguageClient, ServerOptions } from 'vscode-languageclient/node';
1212
import { RazorLanguage } from './razorLanguage';
1313
import { RazorLanguageServerOptions } from './razorLanguageServerOptions';
1414
import { resolveRazorLanguageServerOptions } from './razorLanguageServerOptionsResolver';
15-
import { resolveRazorLanguageServerTrace } from './razorLanguageServerTraceResolver';
15+
import { resolveRazorLanguageServerLogLevel } from './razorLanguageServerTraceResolver';
1616
import { RazorLogger } from './razorLogger';
1717
import { TelemetryReporter as RazorTelemetryReporter } from './telemetryReporter';
1818
import TelemetryReporter from '@vscode/extension-telemetry';
@@ -55,9 +55,9 @@ export class RazorLanguageServerClient implements vscode.Disposable {
5555
}
5656

5757
public updateTraceLevel() {
58-
const languageServerTrace = resolveRazorLanguageServerTrace(this.vscodeType);
58+
const languageServerLogLevel = resolveRazorLanguageServerLogLevel(this.vscodeType);
5959
this.setupLanguageServer();
60-
this.logger.setTraceLevel(languageServerTrace);
60+
this.logger.setTraceLevel(languageServerLogLevel);
6161
}
6262

6363
public onStarted(listener: () => Promise<any>) {
@@ -211,7 +211,7 @@ export class RazorLanguageServerClient implements vscode.Disposable {
211211
}
212212

213213
private setupLanguageServer() {
214-
const languageServerTrace = resolveRazorLanguageServerTrace(this.vscodeType);
214+
const languageServerTrace = resolveRazorLanguageServerLogLevel(this.vscodeType);
215215
const options: RazorLanguageServerOptions = resolveRazorLanguageServerOptions(
216216
this.vscodeType,
217217
this.languageServerDir,
@@ -227,9 +227,9 @@ export class RazorLanguageServerClient implements vscode.Disposable {
227227

228228
this.logger.logMessage(`Razor language server path: ${options.serverPath}`);
229229

230-
args.push('--trace');
231-
args.push(options.trace.toString());
232-
this.razorTelemetryReporter.reportTraceLevel(options.trace);
230+
args.push('--logLevel');
231+
args.push(options.logLevel.toString());
232+
this.razorTelemetryReporter.reportTraceLevel(options.logLevel);
233233

234234
if (options.debug) {
235235
this.razorTelemetryReporter.reportDebugLanguageServer();

src/razor/src/razorLanguageServerOptions.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,12 @@
44
*--------------------------------------------------------------------------------------------*/
55

66
import * as vscode from 'vscode';
7-
import { Trace } from './trace';
7+
import { LogLevel } from './logLevel';
88

99
export interface RazorLanguageServerOptions {
1010
serverPath: string;
1111
outputChannel?: vscode.OutputChannel;
1212
debug?: boolean;
13-
trace: Trace;
13+
logLevel: LogLevel;
1414
usingOmniSharp: boolean;
1515
}

src/razor/src/razorLanguageServerOptionsResolver.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,13 +10,13 @@ import * as vscodeAdapter from './vscodeAdapter';
1010
import * as vscode from 'vscode';
1111
import { RazorLanguageServerOptions } from './razorLanguageServerOptions';
1212
import { RazorLogger } from './razorLogger';
13-
import { Trace } from './trace';
13+
import { LogLevel } from './logLevel';
1414
import { getCSharpDevKit } from '../../utils/getCSharpDevKit';
1515

1616
export function resolveRazorLanguageServerOptions(
1717
vscodeApi: vscodeAdapter.api,
1818
languageServerDir: string,
19-
trace: Trace,
19+
logLevel: LogLevel,
2020
logger: RazorLogger
2121
) {
2222
const languageServerExecutablePath = findLanguageServerExecutable(languageServerDir);
@@ -28,7 +28,7 @@ export function resolveRazorLanguageServerOptions(
2828
return {
2929
serverPath: languageServerExecutablePath,
3030
debug: debugLanguageServer,
31-
trace,
31+
logLevel: logLevel,
3232
outputChannel: logger.outputChannel,
3333
usingOmniSharp,
3434
} as RazorLanguageServerOptions;

src/razor/src/razorLanguageServerTraceResolver.ts

Lines changed: 25 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -3,28 +3,40 @@
33
* Licensed under the MIT License. See License.txt in the project root for license information.
44
*--------------------------------------------------------------------------------------------*/
55

6-
import { Trace } from './trace';
6+
import { LogLevel } from './logLevel';
77
import * as vscodeAdapter from './vscodeAdapter';
88
import * as vscode from 'vscode';
99

10-
export function resolveRazorLanguageServerTrace(vscodeApi: vscodeAdapter.api) {
11-
const languageConfig = vscodeApi.workspace.getConfiguration('razor');
10+
export function resolveRazorLanguageServerLogLevel(vscodeApi: vscodeAdapter.api) {
11+
const languageConfig = vscodeApi.workspace.getConfiguration('razor.server');
1212
const traceString = languageConfig.get<string>('trace');
13-
const trace = parseTraceString(traceString);
13+
const logLevel = parseTraceString(traceString);
1414

15-
return trace;
15+
return logLevel;
1616
}
1717

1818
function parseTraceString(traceString: string | undefined) {
1919
switch (traceString) {
20-
case 'Off':
21-
return Trace.Off;
22-
case 'Messages':
23-
return Trace.Messages;
24-
case 'Verbose':
25-
return Trace.Verbose;
20+
case 'Trace':
21+
return LogLevel.Trace;
22+
case 'Verbose': // For importing old config values
23+
case 'Debug':
24+
return LogLevel.Debug;
25+
case 'Messages': // For importing old config values
26+
case 'Information':
27+
return LogLevel.Information;
28+
case 'Warning':
29+
return LogLevel.Warning;
30+
case 'Error':
31+
return LogLevel.Error;
32+
case 'Critical':
33+
return LogLevel.Critical;
34+
case 'Off': // For importing old config values
35+
case 'None':
36+
return LogLevel.None;
37+
2638
default:
27-
console.log(vscode.l10n.t("Invalid trace setting for Razor language server. Defaulting to '{0}'", 'Off'));
28-
return Trace.Off;
39+
console.log(vscode.l10n.t("Invalid razor.server.trace setting. Defaulting to '{0}'", 'Information'));
40+
return LogLevel.Information;
2941
}
3042
}

0 commit comments

Comments
 (0)