feat: add integration with seq

This commit is contained in:
Polianin Nikita 2024-12-22 07:16:54 +03:00
parent e10075dfed
commit 10bf53adec
4 changed files with 40 additions and 4 deletions

View File

@ -4,6 +4,11 @@
Настройте систему логирования как будет удобно для отображения.
Можно настроить путь к файлу, имена файлов или вовсе отключить логирование в файл.
</p>
<p class="mat-body-2 secondary">
Также вы можете настроить интеграцию с Seq.
Введите необходимые данные и мы отправим тестовый лог на сервер Seq. Его уровень будет Warning.
Если тестовый лог не появился вернитесь на данный шаг и перепроверьте данные.
</p>
<form [formGroup]="loggingSettings">
<p>
@ -31,5 +36,18 @@
matTooltip="Укажите название файла, в который будут записаны логи"
formControlName="logName">
</mat-form-field>
<mat-form-field color="accent">
<mat-label>Сервер Seq</mat-label>
<input matInput
matTooltip="Укажите сервер Seq вначале указав схему (http/https)"
formControlName="seqServer">
</mat-form-field>
<mat-form-field color="accent">
<mat-label>Api ключ Seq</mat-label>
<input matInput
matTooltip="Укажите ключ API, который вы создали в Seq"
formControlName="seqKey">
</mat-form-field>
</div>
</form>

View File

@ -45,7 +45,9 @@ export class LoggingComponent {
this.loggingSettings = this.formBuilder.group({
enabled: [true, Validators.required],
logPath: [''],
logName: ['']
logName: [''],
seqServer: [''],
seqKey: ['']
}
);
@ -56,9 +58,11 @@ export class LoggingComponent {
this.navigationService.nextButtonAction = () => {
return this.api.setLogging({
"enableLogToFile": this.loggingSettings.get('enabled')?.value,
"logFileName": this.loggingSettings.get('logName')?.value,
"logFilePath": this.loggingSettings.get('logPath')?.value
enableLogToFile: this.loggingSettings.get('enabled')?.value,
logFileName: this.loggingSettings.get('logName')?.value,
logFilePath: this.loggingSettings.get('logPath')?.value,
apiServerSeq: this.loggingSettings.get('seqServer')?.value,
apiKeySeq: this.loggingSettings.get('seqKey')?.value
}
);
};
@ -73,6 +77,8 @@ export class LoggingComponent {
this.loggingSettings.get('enabled')?.setValue(x.enableLogToFile);
this.loggingSettings.get('logName')?.setValue(x.logFileName);
this.loggingSettings.get('logPath')?.setValue(x.logFilePath);
this.loggingSettings.get('seqServer')?.setValue(x.apiServerSeq);
this.loggingSettings.get('seqKey')?.setValue(x.apiKeySeq);
});
}
}

View File

@ -163,6 +163,16 @@
Путь к файлу журнала: {{ loggingConfig.logFilePath }}
</div>
}
@if (loggingConfig.apiServerSeq) {
<div>
Сервер Seq: {{ loggingConfig.apiServerSeq }}
</div>
}
@if (loggingConfig.apiKeySeq) {
<div>
Ключ Seq: {{ loggingConfig.apiKeySeq }}
</div>
}
</div>
}

View File

@ -2,4 +2,6 @@ export interface LoggingRequest {
enableLogToFile: boolean;
logFileName?: string;
logFilePath?: string;
apiServerSeq?: string;
apiKeySeq?: string;
}