Refactor error logging to use getErrorMessage utility
- Updated multiple classes to replace direct error message access with getErrorMessage function for improved error handling and consistency. - Modified error logging in CertRequirementManager, CloudflareDomainSync, OneboxDnsManager, OneboxDockerManager, OneboxHttpServer, Onebox, OneboxRegistriesManager, and OneboxServicesManager. - Ensured that all error messages logged provide a standardized format and improved clarity.
This commit is contained in:
@@ -7,6 +7,7 @@
|
||||
import * as plugins from '../plugins.ts';
|
||||
import type { IService, IContainerStats } from '../types.ts';
|
||||
import { logger } from '../logging.ts';
|
||||
import { getErrorMessage } from '../utils/error.ts';
|
||||
|
||||
export class OneboxDockerManager {
|
||||
private dockerClient: plugins.docker.Docker | null = null;
|
||||
@@ -30,7 +31,7 @@ export class OneboxDockerManager {
|
||||
// Ensure onebox network exists
|
||||
await this.ensureNetwork();
|
||||
} catch (error) {
|
||||
logger.error(`Failed to initialize Docker client: ${error.message}`);
|
||||
logger.error(`Failed to initialize Docker client: ${getErrorMessage(error)}`);
|
||||
throw error;
|
||||
}
|
||||
}
|
||||
@@ -68,7 +69,7 @@ export class OneboxDockerManager {
|
||||
logger.debug(`Docker network already exists: ${this.networkName}`);
|
||||
}
|
||||
} catch (error) {
|
||||
logger.error(`Failed to create Docker network: ${error.message}`);
|
||||
logger.error(`Failed to create Docker network: ${getErrorMessage(error)}`);
|
||||
throw error;
|
||||
}
|
||||
}
|
||||
@@ -102,7 +103,7 @@ export class OneboxDockerManager {
|
||||
return await this.createStandaloneContainer(service);
|
||||
}
|
||||
} catch (error) {
|
||||
logger.error(`Failed to create container for ${service.name}: ${error.message}`);
|
||||
logger.error(`Failed to create container for ${service.name}: ${getErrorMessage(error)}`);
|
||||
throw error;
|
||||
}
|
||||
}
|
||||
@@ -257,11 +258,11 @@ export class OneboxDockerManager {
|
||||
logger.success(`Container started: ${containerID}`);
|
||||
} catch (error) {
|
||||
// Ignore "already started" errors (304 status)
|
||||
if (error.message.includes('304')) {
|
||||
if (getErrorMessage(error).includes('304')) {
|
||||
logger.debug(`Container already running: ${containerID}`);
|
||||
return;
|
||||
}
|
||||
logger.error(`Failed to start container ${containerID}: ${error.message}`);
|
||||
logger.error(`Failed to start container ${containerID}: ${getErrorMessage(error)}`);
|
||||
throw error;
|
||||
}
|
||||
}
|
||||
@@ -331,11 +332,11 @@ export class OneboxDockerManager {
|
||||
logger.success(`Container stopped: ${containerID}`);
|
||||
} catch (error) {
|
||||
// Ignore "already stopped" errors (304 status)
|
||||
if (error.message.includes('304')) {
|
||||
if (getErrorMessage(error).includes('304')) {
|
||||
logger.debug(`Container already stopped: ${containerID}`);
|
||||
return;
|
||||
}
|
||||
logger.error(`Failed to stop container ${containerID}: ${error.message}`);
|
||||
logger.error(`Failed to stop container ${containerID}: ${getErrorMessage(error)}`);
|
||||
throw error;
|
||||
}
|
||||
}
|
||||
@@ -392,7 +393,7 @@ export class OneboxDockerManager {
|
||||
|
||||
logger.success(`Container restarted: ${containerID}`);
|
||||
} catch (error) {
|
||||
logger.error(`Failed to restart container ${containerID}: ${error.message}`);
|
||||
logger.error(`Failed to restart container ${containerID}: ${getErrorMessage(error)}`);
|
||||
throw error;
|
||||
}
|
||||
}
|
||||
@@ -446,7 +447,7 @@ export class OneboxDockerManager {
|
||||
await this.stopContainer(containerID);
|
||||
} catch (error) {
|
||||
// Ignore stop errors
|
||||
logger.debug(`Error stopping container before removal: ${error.message}`);
|
||||
logger.debug(`Error stopping container before removal: ${getErrorMessage(error)}`);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -459,7 +460,7 @@ export class OneboxDockerManager {
|
||||
|
||||
logger.success(`Container removed: ${containerID}`);
|
||||
} catch (error) {
|
||||
logger.error(`Failed to remove container ${containerID}: ${error.message}`);
|
||||
logger.error(`Failed to remove container ${containerID}: ${getErrorMessage(error)}`);
|
||||
throw error;
|
||||
}
|
||||
}
|
||||
@@ -497,7 +498,7 @@ export class OneboxDockerManager {
|
||||
|
||||
return response.body.State?.Status || 'unknown';
|
||||
} catch (error) {
|
||||
logger.error(`Failed to get container status ${containerID}: ${error.message}`);
|
||||
logger.error(`Failed to get container status ${containerID}: ${getErrorMessage(error)}`);
|
||||
return 'unknown';
|
||||
}
|
||||
}
|
||||
@@ -566,7 +567,7 @@ export class OneboxDockerManager {
|
||||
return 'unknown';
|
||||
}
|
||||
} catch (error) {
|
||||
logger.error(`Failed to get service status ${serviceID}: ${error.message}`);
|
||||
logger.error(`Failed to get service status ${serviceID}: ${getErrorMessage(error)}`);
|
||||
return 'unknown';
|
||||
}
|
||||
}
|
||||
@@ -624,8 +625,9 @@ export class OneboxDockerManager {
|
||||
};
|
||||
} catch (error) {
|
||||
// Don't log errors for container not found - this is expected for Swarm services
|
||||
if (!error.message.includes('No such container') && !error.message.includes('not found')) {
|
||||
logger.error(`Failed to get container stats ${containerID}: ${error.message}`);
|
||||
const errMsg = getErrorMessage(error);
|
||||
if (!errMsg.includes('No such container') && !errMsg.includes('not found')) {
|
||||
logger.error(`Failed to get container stats ${containerID}: ${errMsg}`);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
@@ -653,7 +655,7 @@ export class OneboxDockerManager {
|
||||
|
||||
return null;
|
||||
} catch (error) {
|
||||
logger.warn(`Failed to get container ID for service ${serviceId}: ${error.message}`);
|
||||
logger.warn(`Failed to get container ID for service ${serviceId}: ${getErrorMessage(error)}`);
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -707,7 +709,7 @@ export class OneboxDockerManager {
|
||||
stderr: '', // v5 combines stdout/stderr into single string
|
||||
};
|
||||
} catch (error) {
|
||||
logger.error(`Failed to get container logs ${containerID}: ${error.message}`);
|
||||
logger.error(`Failed to get container logs ${containerID}: ${getErrorMessage(error)}`);
|
||||
return { stdout: '', stderr: '' };
|
||||
}
|
||||
}
|
||||
@@ -723,7 +725,7 @@ export class OneboxDockerManager {
|
||||
c.Labels && c.Labels['managed-by'] === 'onebox'
|
||||
);
|
||||
} catch (error) {
|
||||
logger.error(`Failed to list containers: ${error.message}`);
|
||||
logger.error(`Failed to list containers: ${getErrorMessage(error)}`);
|
||||
return [];
|
||||
}
|
||||
}
|
||||
@@ -763,7 +765,7 @@ export class OneboxDockerManager {
|
||||
await this.dockerClient!.pruneImages();
|
||||
logger.success('Unused images pruned successfully');
|
||||
} catch (error) {
|
||||
logger.error(`Failed to prune images: ${error.message}`);
|
||||
logger.error(`Failed to prune images: ${getErrorMessage(error)}`);
|
||||
throw error;
|
||||
}
|
||||
}
|
||||
@@ -788,7 +790,7 @@ export class OneboxDockerManager {
|
||||
|
||||
return null;
|
||||
} catch (error) {
|
||||
logger.error(`Failed to get container IP ${containerID}: ${error.message}`);
|
||||
logger.error(`Failed to get container IP ${containerID}: ${getErrorMessage(error)}`);
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -837,7 +839,7 @@ export class OneboxDockerManager {
|
||||
|
||||
return { stdout, stderr, exitCode };
|
||||
} catch (error) {
|
||||
logger.error(`Failed to exec in container ${containerID}: ${error.message}`);
|
||||
logger.error(`Failed to exec in container ${containerID}: ${getErrorMessage(error)}`);
|
||||
throw error;
|
||||
}
|
||||
}
|
||||
@@ -922,7 +924,7 @@ export class OneboxDockerManager {
|
||||
logger.success(`Platform container ${options.name} started successfully`);
|
||||
return containerID;
|
||||
} catch (error) {
|
||||
logger.error(`Failed to create platform container ${options.name}: ${error.message}`);
|
||||
logger.error(`Failed to create platform container ${options.name}: ${getErrorMessage(error)}`);
|
||||
throw error;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user