Better project logging

This commit is contained in:
Sheetal Nandi
2018-10-29 16:32:58 -07:00
parent f97274383d
commit 41b19309d4
2 changed files with 19 additions and 14 deletions

View File

@@ -1037,7 +1037,8 @@ namespace ts.server {
}
private removeProject(project: Project) {
this.logger.info(`remove project: ${project.projectName}\nFiles::${project.getRootFiles().toString()}`);
this.logger.info("`remove Project::");
project.print();
project.close();
if (Debug.shouldAssert(AssertionLevel.Normal)) {
@@ -1477,19 +1478,9 @@ namespace ts.server {
const writeProjectFileNames = this.logger.hasLevel(LogLevel.verbose);
this.logger.startGroup();
let counter = 0;
const printProjects = (projects: Project[], counter: number): number => {
for (const project of projects) {
this.logger.info(`Project '${project.getProjectName()}' (${ProjectKind[project.projectKind]}) ${counter}`);
this.logger.info(project.filesToString(writeProjectFileNames));
this.logger.info("-----------------------------------------------");
counter++;
}
return counter;
};
counter = printProjects(this.externalProjects, counter);
counter = printProjects(arrayFrom(this.configuredProjects.values()), counter);
printProjects(this.inferredProjects, counter);
let counter = printProjectsWithCounter(this.externalProjects, 0);
counter = printProjectsWithCounter(arrayFrom(this.configuredProjects.values()), counter);
printProjectsWithCounter(this.inferredProjects, counter);
this.logger.info("Open files: ");
this.openFiles.forEach((projectRootPath, path) => {
@@ -2909,4 +2900,12 @@ namespace ts.server {
export function isConfigFile(config: ScriptInfoOrConfig): config is TsConfigSourceFile {
return (config as TsConfigSourceFile).kind !== undefined;
}
function printProjectsWithCounter(projects: Project[], counter: number) {
for (const project of projects) {
project.print(counter);
counter++;
}
return counter;
}
}

View File

@@ -995,6 +995,12 @@ namespace ts.server {
return strBuilder;
}
print(counter?: number) {
this.writeLog(`Project '${this.projectName}' (${ProjectKind[this.projectKind]}) ${counter === undefined ? "" : counter}`);
this.writeLog(this.filesToString(this.projectService.logger.hasLevel(LogLevel.verbose)));
this.writeLog("-----------------------------------------------");
}
setCompilerOptions(compilerOptions: CompilerOptions) {
if (compilerOptions) {
compilerOptions.allowNonTsExtensions = true;