|
|
@@ -33,16 +33,21 @@ export default class Controller {
|
|
|
if (options.json) {
|
|
|
response.headers.set('Content-Type', 'application/json');
|
|
|
}
|
|
|
-
|
|
|
+ const userAgent = req.headers.get('User-Agent') ?? '-';
|
|
|
const logMessage = this.getLogMessage(
|
|
|
req.method,
|
|
|
url.pathname,
|
|
|
response.status,
|
|
|
output.byteLength,
|
|
|
+ userAgent,
|
|
|
userName,
|
|
|
);
|
|
|
if (isSuccessfulStatus(response.status)) {
|
|
|
- logger.info(logMessage);
|
|
|
+ if (this.isHealthCheck(userAgent)) {
|
|
|
+ logger.debug(logMessage);
|
|
|
+ } else {
|
|
|
+ logger.info(logMessage);
|
|
|
+ }
|
|
|
} else {
|
|
|
logger.error(logMessage);
|
|
|
}
|
|
|
@@ -79,9 +84,14 @@ export default class Controller {
|
|
|
path: string,
|
|
|
status: number,
|
|
|
length: number,
|
|
|
+ userAgent: string,
|
|
|
userName?: string,
|
|
|
) {
|
|
|
const user = userName ? userName + ' ' : '';
|
|
|
- return `${method} ${path} ${user}${status} ${length}`;
|
|
|
+ return `${method} ${path} ${user}${status} ${length} (${userAgent})`;
|
|
|
+ }
|
|
|
+
|
|
|
+ private static isHealthCheck(userAgent: string): boolean {
|
|
|
+ return userAgent === Deno.env.get('DOCKER_USER_AGENT');
|
|
|
}
|
|
|
}
|