add validate log number enpoint

This commit is contained in:
Julia Gru
2023-03-06 15:12:52 +01:00
parent 6a91fd33c0
commit 2a3f57764d
4 changed files with 155 additions and 126 deletions

View File

@@ -93,4 +93,9 @@ export class UmbLogViewerRepository {
await this.#init();
return this.#messagesDataSource.getLogViewerLevel({ skip, take });
}
async getLogViewerValidateLogsSize({ startDate, endDate }: { startDate?: string; endDate?: string }) {
await this.#init();
return this.#messagesDataSource.getLogViewerValidateLogsSize({ startDate, endDate });
}
}

View File

@@ -71,133 +71,143 @@ export class UmbLogSearchesServerDataSource implements LogSearchDataSource {
* @implements {LogMessagesDataSource}
*/
export class UmbLogMessagesServerDataSource implements LogMessagesDataSource {
#host: UmbControllerHostInterface;
#host: UmbControllerHostInterface;
/**
* Creates an instance of UmbLogMessagesServerDataSource.
* @param {UmbControllerHostInterface} host
* @memberof UmbLogMessagesServerDataSource
*/
constructor(host: UmbControllerHostInterface) {
this.#host = host;
}
/**
* Creates an instance of UmbLogMessagesServerDataSource.
* @param {UmbControllerHostInterface} host
* @memberof UmbLogMessagesServerDataSource
*/
constructor(host: UmbControllerHostInterface) {
this.#host = host;
}
/**
* Grabs all the loggers from the server
*
* @param {{ skip?: number; take?: number }} { skip = 0, take = 100 }
* @return {*}
* @memberof UmbLogMessagesServerDataSource
*/
async getLogViewerLevel({ skip = 0, take = 100 }: { skip?: number; take?: number }) {
return await tryExecuteAndNotify(this.#host, LogViewerResource.getLogViewerLevel({ skip, take }));
}
/**
* Grabs all the loggers from the server
*
* @param {{ skip?: number; take?: number }} { skip = 0, take = 100 }
* @return {*}
* @memberof UmbLogMessagesServerDataSource
*/
async getLogViewerLevel({ skip = 0, take = 100 }: { skip?: number; take?: number }) {
return await tryExecuteAndNotify(this.#host, LogViewerResource.getLogViewerLevel({ skip, take }));
}
/**
* Grabs all the number of different log messages from the server
*
* @param {{ skip?: number; take?: number }} { skip = 0, take = 100 }
* @return {*}
* @memberof UmbLogMessagesServerDataSource
*/
async getLogViewerLevelCount({ startDate, endDate }: { startDate?: string; endDate?: string }) {
return await tryExecuteAndNotify(
this.#host,
LogViewerResource.getLogViewerLevelCount({
startDate,
endDate,
})
);
/**
* Grabs all the number of different log messages from the server
*
* @param {{ skip?: number; take?: number }} { skip = 0, take = 100 }
* @return {*}
* @memberof UmbLogMessagesServerDataSource
*/
async getLogViewerLevelCount({ startDate, endDate }: { startDate?: string; endDate?: string }) {
return await tryExecuteAndNotify(
this.#host,
LogViewerResource.getLogViewerLevelCount({
startDate,
endDate,
})
);
}
/**
* Grabs all the log messages from the server
*
* @param {{
* skip?: number;
* take?: number;
* orderDirection?: DirectionModel;
* filterExpression?: string;
* logLevel?: Array<LogLevelModel>;
* startDate?: string;
* endDate?: string;
* }} {
* skip = 0,
* take = 100,
* orderDirection,
* filterExpression,
* logLevel,
* startDate,
* endDate,
* }
* @return {*}
* @memberof UmbLogMessagesServerDataSource
*/
async getLogViewerLogs({
skip = 0,
take = 100,
orderDirection,
filterExpression,
logLevel,
startDate,
endDate,
}: {
skip?: number;
take?: number;
orderDirection?: DirectionModel;
filterExpression?: string;
logLevel?: Array<LogLevelModel>;
startDate?: string;
endDate?: string;
}) {
return await tryExecuteAndNotify(
this.#host,
LogViewerResource.getLogViewerLog({
skip,
take,
orderDirection,
filterExpression,
logLevel,
startDate,
endDate,
})
);
}
/**
* Grabs all the log message templates from the server
*
* @param {{
* skip?: number;
* take?: number;
* startDate?: string;
* endDate?: string;
* }} {
* skip,
* take = 100,
* startDate,
* endDate,
* }
* @return {*}
* @memberof UmbLogMessagesServerDataSource
*/
async getLogViewerMessageTemplate({
skip,
take = 100,
startDate,
endDate,
}: {
skip?: number;
take?: number;
startDate?: string;
endDate?: string;
}) {
return await tryExecuteAndNotify(
this.#host,
LogViewerResource.getLogViewerMessageTemplate({
skip,
take,
startDate,
endDate,
})
);
}
async getLogViewerValidateLogsSize({ startDate, endDate }: { startDate?: string; endDate?: string }) {
return await tryExecuteAndNotify(
this.#host,
LogViewerResource.getLogViewerValidateLogsSize({
startDate,
endDate,
})
);
}
}
/**
* Grabs all the log messages from the server
*
* @param {{
* skip?: number;
* take?: number;
* orderDirection?: DirectionModel;
* filterExpression?: string;
* logLevel?: Array<LogLevelModel>;
* startDate?: string;
* endDate?: string;
* }} {
* skip = 0,
* take = 100,
* orderDirection,
* filterExpression,
* logLevel,
* startDate,
* endDate,
* }
* @return {*}
* @memberof UmbLogMessagesServerDataSource
*/
async getLogViewerLogs({
skip = 0,
take = 100,
orderDirection,
filterExpression,
logLevel,
startDate,
endDate,
}: {
skip?: number;
take?: number;
orderDirection?: DirectionModel;
filterExpression?: string;
logLevel?: Array<LogLevelModel>;
startDate?: string;
endDate?: string;
}) {
return await tryExecuteAndNotify(
this.#host,
LogViewerResource.getLogViewerLog({
skip,
take,
orderDirection,
filterExpression,
logLevel,
startDate,
endDate,
})
);
}
/**
* Grabs all the log message templates from the server
*
* @param {{
* skip?: number;
* take?: number;
* startDate?: string;
* endDate?: string;
* }} {
* skip,
* take = 100,
* startDate,
* endDate,
* }
* @return {*}
* @memberof UmbLogMessagesServerDataSource
*/
async getLogViewerMessageTemplate({
skip,
take = 100,
startDate,
endDate,
}: {
skip?: number;
take?: number;
startDate?: string;
endDate?: string;
}) {
return await tryExecuteAndNotify(
this.#host,
LogViewerResource.getLogViewerMessageTemplate({
skip,
take,
startDate,
endDate,
})
);
}
}

View File

@@ -62,6 +62,9 @@ export class UmbLogViewerWorkspaceContext {
#loggers = new DeepState<PagedLoggerModel | null>(null);
loggers = createObservablePart(this.#loggers, (data) => data?.items);
#canShowLogs = new DeepState<unknown>(null);
canShowLogs = createObservablePart(this.#canShowLogs, (data) => data);
#filterExpression = new StringState<string>('');
filterExpression = createObservablePart(this.#filterExpression, (data) => data);
@@ -169,6 +172,16 @@ export class UmbLogViewerWorkspaceContext {
}
}
async validateLogSize() {
const { data, error } = await this.#repository.getLogViewerValidateLogsSize({ ...this.#dateRange.getValue() });
debugger;
if (error) {
this.#canShowLogs.next(false);
return;
}
this.#canShowLogs.next(true);
}
setCurrentPage(page: number) {
this.currentPage = page;
}

View File

@@ -102,6 +102,7 @@ export class UmbLogViewerOverviewViewElement extends UmbLitElement {
this.#logViewerContext = instance;
this.#observeStuff();
this.#logViewerContext?.getLogLevels(0, 100);
this.#logViewerContext?.validateLogSize();
});
}