diff --git a/src/extension.ts b/src/extension.ts index 84a6bc0..9bc8775 100644 --- a/src/extension.ts +++ b/src/extension.ts @@ -4,6 +4,7 @@ import * as vscode from 'vscode'; import { ParquetEditorProvider } from './parquet-editor-provider'; import { getLogger, initLogger } from './logger'; +import { loggingSettings } from './settings'; // this method is called when your extension is activated // your extension is activated the very first time the command is executed @@ -12,11 +13,8 @@ export async function activate(context: vscode.ExtensionContext): Promise getLogger().info('parquet-viewer activated'); context.subscriptions.push(vscode.workspace.onDidChangeConfiguration((e: vscode.ConfigurationChangeEvent) => { - if (e.affectsConfiguration('logging') - || e.affectsConfiguration('logLevel') - || e.affectsConfiguration('logPanel') - || e.affectsConfiguration('logFolder')) { - // restart logger on log configuration change + if (loggingSettings.some(s => e.affectsConfiguration(s))) { + // restart logger on log configuration change initLogger(context); } })); diff --git a/src/settings.ts b/src/settings.ts index 61f7818..4ce00af 100644 --- a/src/settings.ts +++ b/src/settings.ts @@ -1,8 +1,10 @@ import * as vscode from 'vscode'; import { LogLevel } from '@vscode-logging/logger'; +const basename = 'parquet-viewer'; + function settings() { - return vscode.workspace.getConfiguration('parquet-viewer'); + return vscode.workspace.getConfiguration(basename); } export function parquetTools(): string | undefined { @@ -44,3 +46,5 @@ export function useParquetTools(): boolean { export function jsonSpace(): number | string | undefined { return settings().get('jsonSpace'); } + +export const loggingSettings = ['logging', 'logLevel', 'logPanel', 'logFolder'].map(s => `${basename}.${s}`);