aws-cdk
Version:
AWS CDK CLI, the command line tool for CDK apps
106 lines • 9.92 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.trace = exports.debug = exports.info = exports.warn = exports.result = exports.error = void 0;
exports.formatMessage = formatMessage;
/**
* Internal helper that processes log inputs into a consistent format.
* Handles string interpolation, format strings, and object parameter styles.
* Applies optional styling and prepares the final message for logging.
*/
function formatMessage(msg, category = 'TOOLKIT') {
return {
time: new Date(),
level: msg.level,
code: msg.code ?? defaultMessageCode(msg.level, category),
message: msg.message,
data: msg.data,
};
}
/**
* Build a message code from level and category. The code must be valid for this function to pass.
* Otherwise it returns a ToolkitError.
*/
function defaultMessageCode(level, category = 'TOOLKIT') {
const levelIndicator = level === 'error' ? 'E' :
level === 'warn' ? 'W' :
'I';
return `CDK_${category}_${levelIndicator}0000`;
}
/**
* Creates an error level message.
* Errors must always have a unique code.
*/
const error = (message, code, payload) => {
return formatMessage({
level: 'error',
code,
message,
data: payload,
});
};
exports.error = error;
/**
* Creates a result level message and represents the most important message for a given action.
*
* They should be used sparsely, with an action usually having no or exactly one result.
* However actions that operate on Cloud Assemblies might include a result per Stack.
* Unlike other messages, results must always have a code and a payload.
*/
const result = (message, code, payload) => {
return formatMessage({
level: 'result',
code,
message,
data: payload,
});
};
exports.result = result;
/**
* Creates a warning level message.
*/
const warn = (message, code, payload) => {
return formatMessage({
level: 'warn',
code,
message,
data: payload,
});
};
exports.warn = warn;
/**
* Creates an info level message.
*/
const info = (message, code, payload) => {
return formatMessage({
level: 'info',
code,
message,
data: payload,
});
};
exports.info = info;
/**
* Creates a debug level message.
*/
const debug = (message, code, payload) => {
return formatMessage({
level: 'debug',
code,
message,
data: payload,
});
};
exports.debug = debug;
/**
* Creates a trace level message.
*/
const trace = (message, code, payload) => {
return formatMessage({
level: 'trace',
code,
message,
data: payload,
});
};
exports.trace = trace;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJtZXNzYWdlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFnQkEsc0NBUUM7QUFiRDs7OztHQUlHO0FBQ0gsU0FBZ0IsYUFBYSxDQUFJLEdBQTJDLEVBQUUsV0FBa0MsU0FBUztJQUN2SCxPQUFPO1FBQ0wsSUFBSSxFQUFFLElBQUksSUFBSSxFQUFFO1FBQ2hCLEtBQUssRUFBRSxHQUFHLENBQUMsS0FBSztRQUNoQixJQUFJLEVBQUUsR0FBRyxDQUFDLElBQUksSUFBSSxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLFFBQVEsQ0FBQztRQUN6RCxPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU87UUFDcEIsSUFBSSxFQUFFLEdBQUcsQ0FBQyxJQUFJO0tBQ2YsQ0FBQztBQUNKLENBQUM7QUFFRDs7O0dBR0c7QUFDSCxTQUFTLGtCQUFrQixDQUFDLEtBQXFCLEVBQUUsV0FBa0MsU0FBUztJQUM1RixNQUFNLGNBQWMsR0FBRyxLQUFLLEtBQUssT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM5QyxLQUFLLEtBQUssTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN0QixHQUFHLENBQUM7SUFDUixPQUFPLE9BQU8sUUFBUSxJQUFJLGNBQWMsTUFBTSxDQUFDO0FBQ2pELENBQUM7QUFFRDs7O0dBR0c7QUFDSSxNQUFNLEtBQUssR0FBRyxDQUFJLE9BQWUsRUFBRSxJQUFtQixFQUFFLE9BQVcsRUFBRSxFQUFFO0lBQzVFLE9BQU8sYUFBYSxDQUFDO1FBQ25CLEtBQUssRUFBRSxPQUFPO1FBQ2QsSUFBSTtRQUNKLE9BQU87UUFDUCxJQUFJLEVBQUUsT0FBTztLQUNkLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQztBQVBXLFFBQUEsS0FBSyxTQU9oQjtBQUVGOzs7Ozs7R0FNRztBQUNJLE1BQU0sTUFBTSxHQUFHLENBQUksT0FBZSxFQUFFLElBQW1CLEVBQUUsT0FBVSxFQUFFLEVBQUU7SUFDNUUsT0FBTyxhQUFhLENBQUM7UUFDbkIsS0FBSyxFQUFFLFFBQVE7UUFDZixJQUFJO1FBQ0osT0FBTztRQUNQLElBQUksRUFBRSxPQUFPO0tBQ2QsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDO0FBUFcsUUFBQSxNQUFNLFVBT2pCO0FBRUY7O0dBRUc7QUFDSSxNQUFNLElBQUksR0FBRyxDQUFJLE9BQWUsRUFBRSxJQUFvQixFQUFFLE9BQVcsRUFBRSxFQUFFO0lBQzVFLE9BQU8sYUFBYSxDQUFDO1FBQ25CLEtBQUssRUFBRSxNQUFNO1FBQ2IsSUFBSTtRQUNKLE9BQU87UUFDUCxJQUFJLEVBQUUsT0FBTztLQUNkLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQztBQVBXLFFBQUEsSUFBSSxRQU9mO0FBRUY7O0dBRUc7QUFDSSxNQUFNLElBQUksR0FBRyxDQUFJLE9BQWUsRUFBRSxJQUFvQixFQUFFLE9BQVcsRUFBRSxFQUFFO0lBQzVFLE9BQU8sYUFBYSxDQUFDO1FBQ25CLEtBQUssRUFBRSxNQUFNO1FBQ2IsSUFBSTtRQUNKLE9BQU87UUFDUCxJQUFJLEVBQUUsT0FBTztLQUNkLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQztBQVBXLFFBQUEsSUFBSSxRQU9mO0FBRUY7O0dBRUc7QUFDSSxNQUFNLEtBQUssR0FBRyxDQUFJLE9BQWUsRUFBRSxJQUFvQixFQUFFLE9BQVcsRUFBRSxFQUFFO0lBQzdFLE9BQU8sYUFBYSxDQUFDO1FBQ25CLEtBQUssRUFBRSxPQUFPO1FBQ2QsSUFBSTtRQUNKLE9BQU87UUFDUCxJQUFJLEVBQUUsT0FBTztLQUNkLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQztBQVBXLFFBQUEsS0FBSyxTQU9oQjtBQUVGOztHQUVHO0FBQ0ksTUFBTSxLQUFLLEdBQUcsQ0FBSSxPQUFlLEVBQUUsSUFBb0IsRUFBRSxPQUFXLEVBQUUsRUFBRTtJQUM3RSxPQUFPLGFBQWEsQ0FBQztRQUNuQixLQUFLLEVBQUUsT0FBTztRQUNkLElBQUk7UUFDSixPQUFPO1FBQ1AsSUFBSSxFQUFFLE9BQU87S0FDZCxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUM7QUFQVyxRQUFBLEtBQUssU0FPaEIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBUaGlzIGZpbGUgaXMgYSBiYWNrcG9ydCBmcm9tIEBhd3MtY2RrL3Rvb2xraXQuXG4vLyBUaGUgQ0xJIGNhbm5vdCBkZXBlbmQgb24gdGhlIHRvb2xraXQgeWV0LCBiZWNhdXNlIHRoZSB0b29sa2l0IGN1cnJlbnRseSBkZXBlbmRzIG9uIHRoZSBDTEkuXG4vLyBPbmNlIHdlIGhhdmUgY29tcGxldGUgdGhlIHJlcG8gc3BsaXQsIHdlIHdpbGwgY3JlYXRlIGEgdGVtcG9yYXJ5LCBwcml2YXRlIGxpYnJhcnkgcGFja2FnZVxuLy8gZm9yIGFsbCBjb2RlIHRoYXQgaXMgc2hhcmVkIGJldHdlZW4gQ0xJIGFuZCB0b29sa2l0LiBUaGlzIGlzIHdoZXJlIHRoaXMgZmlsZSB3aWxsIHRoZW4gbGl2ZS5cbmltcG9ydCB0eXBlIHsgSW9NZXNzYWdlQ29kZSwgSW9NZXNzYWdlTGV2ZWwgfSBmcm9tICcuL2lvLWhvc3QnO1xuaW1wb3J0IHR5cGUgeyBBY3Rpb25MZXNzTWVzc2FnZSB9IGZyb20gJy4uLy4uLy4uL0Bhd3MtY2RrL3Rvb2xraXQtbGliL2xpYi9hcGkvaW8vcHJpdmF0ZSc7XG5pbXBvcnQgdHlwZSB7IElvTWVzc2FnZUNvZGVDYXRlZ29yeSB9IGZyb20gJy4uL2xvZ2dpbmcnO1xuXG50eXBlIE9wdGlvbmFsPFQsIEsgZXh0ZW5kcyBrZXlvZiBUPiA9IFBpY2s8UGFydGlhbDxUPiwgSz4gJiBPbWl0PFQsIEs+O1xudHlwZSBTaW1wbGlmaWVkTWVzc2FnZTxUPiA9IE9taXQ8QWN0aW9uTGVzc01lc3NhZ2U8VD4sICd0aW1lJz47XG5cbi8qKlxuICogSW50ZXJuYWwgaGVscGVyIHRoYXQgcHJvY2Vzc2VzIGxvZyBpbnB1dHMgaW50byBhIGNvbnNpc3RlbnQgZm9ybWF0LlxuICogSGFuZGxlcyBzdHJpbmcgaW50ZXJwb2xhdGlvbiwgZm9ybWF0IHN0cmluZ3MsIGFuZCBvYmplY3QgcGFyYW1ldGVyIHN0eWxlcy5cbiAqIEFwcGxpZXMgb3B0aW9uYWwgc3R5bGluZyBhbmQgcHJlcGFyZXMgdGhlIGZpbmFsIG1lc3NhZ2UgZm9yIGxvZ2dpbmcuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXRNZXNzYWdlPFQ+KG1zZzogT3B0aW9uYWw8U2ltcGxpZmllZE1lc3NhZ2U8VD4sICdjb2RlJz4sIGNhdGVnb3J5OiBJb01lc3NhZ2VDb2RlQ2F0ZWdvcnkgPSAnVE9PTEtJVCcpOiBBY3Rpb25MZXNzTWVzc2FnZTxUPiB7XG4gIHJldHVybiB7XG4gICAgdGltZTogbmV3IERhdGUoKSxcbiAgICBsZXZlbDogbXNnLmxldmVsLFxuICAgIGNvZGU6IG1zZy5jb2RlID8/IGRlZmF1bHRNZXNzYWdlQ29kZShtc2cubGV2ZWwsIGNhdGVnb3J5KSxcbiAgICBtZXNzYWdlOiBtc2cubWVzc2FnZSxcbiAgICBkYXRhOiBtc2cuZGF0YSxcbiAgfTtcbn1cblxuLyoqXG4gKiBCdWlsZCBhIG1lc3NhZ2UgY29kZSBmcm9tIGxldmVsIGFuZCBjYXRlZ29yeS4gVGhlIGNvZGUgbXVzdCBiZSB2YWxpZCBmb3IgdGhpcyBmdW5jdGlvbiB0byBwYXNzLlxuICogT3RoZXJ3aXNlIGl0IHJldHVybnMgYSBUb29sa2l0RXJyb3IuXG4gKi9cbmZ1bmN0aW9uIGRlZmF1bHRNZXNzYWdlQ29kZShsZXZlbDogSW9NZXNzYWdlTGV2ZWwsIGNhdGVnb3J5OiBJb01lc3NhZ2VDb2RlQ2F0ZWdvcnkgPSAnVE9PTEtJVCcpOiBJb01lc3NhZ2VDb2RlIHtcbiAgY29uc3QgbGV2ZWxJbmRpY2F0b3IgPSBsZXZlbCA9PT0gJ2Vycm9yJyA/ICdFJyA6XG4gICAgbGV2ZWwgPT09ICd3YXJuJyA/ICdXJyA6XG4gICAgICAnSSc7XG4gIHJldHVybiBgQ0RLXyR7Y2F0ZWdvcnl9XyR7bGV2ZWxJbmRpY2F0b3J9MDAwMGA7XG59XG5cbi8qKlxuICogQ3JlYXRlcyBhbiBlcnJvciBsZXZlbCBtZXNzYWdlLlxuICogRXJyb3JzIG11c3QgYWx3YXlzIGhhdmUgYSB1bmlxdWUgY29kZS5cbiAqL1xuZXhwb3J0IGNvbnN0IGVycm9yID0gPFQ+KG1lc3NhZ2U6IHN0cmluZywgY29kZTogSW9NZXNzYWdlQ29kZSwgcGF5bG9hZD86IFQpID0+IHtcbiAgcmV0dXJuIGZvcm1hdE1lc3NhZ2Uoe1xuICAgIGxldmVsOiAnZXJyb3InLFxuICAgIGNvZGUsXG4gICAgbWVzc2FnZSxcbiAgICBkYXRhOiBwYXlsb2FkLFxuICB9KTtcbn07XG5cbi8qKlxuICogQ3JlYXRlcyBhIHJlc3VsdCBsZXZlbCBtZXNzYWdlIGFuZCByZXByZXNlbnRzIHRoZSBtb3N0IGltcG9ydGFudCBtZXNzYWdlIGZvciBhIGdpdmVuIGFjdGlvbi5cbiAqXG4gKiBUaGV5IHNob3VsZCBiZSB1c2VkIHNwYXJzZWx5LCB3aXRoIGFuIGFjdGlvbiB1c3VhbGx5IGhhdmluZyBubyBvciBleGFjdGx5IG9uZSByZXN1bHQuXG4gKiBIb3dldmVyIGFjdGlvbnMgdGhhdCBvcGVyYXRlIG9uIENsb3VkIEFzc2VtYmxpZXMgbWlnaHQgaW5jbHVkZSBhIHJlc3VsdCBwZXIgU3RhY2suXG4gKiBVbmxpa2Ugb3RoZXIgbWVzc2FnZXMsIHJlc3VsdHMgbXVzdCBhbHdheXMgaGF2ZSBhIGNvZGUgYW5kIGEgcGF5bG9hZC5cbiAqL1xuZXhwb3J0IGNvbnN0IHJlc3VsdCA9IDxUPihtZXNzYWdlOiBzdHJpbmcsIGNvZGU6IElvTWVzc2FnZUNvZGUsIHBheWxvYWQ6IFQpID0+IHtcbiAgcmV0dXJuIGZvcm1hdE1lc3NhZ2Uoe1xuICAgIGxldmVsOiAncmVzdWx0JyxcbiAgICBjb2RlLFxuICAgIG1lc3NhZ2UsXG4gICAgZGF0YTogcGF5bG9hZCxcbiAgfSk7XG59O1xuXG4vKipcbiAqIENyZWF0ZXMgYSB3YXJuaW5nIGxldmVsIG1lc3NhZ2UuXG4gKi9cbmV4cG9ydCBjb25zdCB3YXJuID0gPFQ+KG1lc3NhZ2U6IHN0cmluZywgY29kZT86IElvTWVzc2FnZUNvZGUsIHBheWxvYWQ/OiBUKSA9PiB7XG4gIHJldHVybiBmb3JtYXRNZXNzYWdlKHtcbiAgICBsZXZlbDogJ3dhcm4nLFxuICAgIGNvZGUsXG4gICAgbWVzc2FnZSxcbiAgICBkYXRhOiBwYXlsb2FkLFxuICB9KTtcbn07XG5cbi8qKlxuICogQ3JlYXRlcyBhbiBpbmZvIGxldmVsIG1lc3NhZ2UuXG4gKi9cbmV4cG9ydCBjb25zdCBpbmZvID0gPFQ+KG1lc3NhZ2U6IHN0cmluZywgY29kZT86IElvTWVzc2FnZUNvZGUsIHBheWxvYWQ/OiBUKSA9PiB7XG4gIHJldHVybiBmb3JtYXRNZXNzYWdlKHtcbiAgICBsZXZlbDogJ2luZm8nLFxuICAgIGNvZGUsXG4gICAgbWVzc2FnZSxcbiAgICBkYXRhOiBwYXlsb2FkLFxuICB9KTtcbn07XG5cbi8qKlxuICogQ3JlYXRlcyBhIGRlYnVnIGxldmVsIG1lc3NhZ2UuXG4gKi9cbmV4cG9ydCBjb25zdCBkZWJ1ZyA9IDxUPihtZXNzYWdlOiBzdHJpbmcsIGNvZGU/OiBJb01lc3NhZ2VDb2RlLCBwYXlsb2FkPzogVCkgPT4ge1xuICByZXR1cm4gZm9ybWF0TWVzc2FnZSh7XG4gICAgbGV2ZWw6ICdkZWJ1ZycsXG4gICAgY29kZSxcbiAgICBtZXNzYWdlLFxuICAgIGRhdGE6IHBheWxvYWQsXG4gIH0pO1xufTtcblxuLyoqXG4gKiBDcmVhdGVzIGEgdHJhY2UgbGV2ZWwgbWVzc2FnZS5cbiAqL1xuZXhwb3J0IGNvbnN0IHRyYWNlID0gPFQ+KG1lc3NhZ2U6IHN0cmluZywgY29kZT86IElvTWVzc2FnZUNvZGUsIHBheWxvYWQ/OiBUKSA9PiB7XG4gIHJldHVybiBmb3JtYXRNZXNzYWdlKHtcbiAgICBsZXZlbDogJ3RyYWNlJyxcbiAgICBjb2RlLFxuICAgIG1lc3NhZ2UsXG4gICAgZGF0YTogcGF5bG9hZCxcbiAgfSk7XG59O1xuXG4iXX0=