1 | ;
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | exports.inspectProvider = exports.log = void 0;
|
4 | const debug = require("debug");
|
5 | const util_1 = require("util");
|
6 | /**
|
7 | * Faast.js loggers.
|
8 | * @remarks
|
9 | * Unless otherwise specified, each log is disabled by default unless the value
|
10 | * of the DEBUG environment variable is set to the corresponding value. For
|
11 | * example:
|
12 | *
|
13 | * ```
|
14 | * $ DEBUG=faast:info,faast:provider <cmd>
|
15 | * $ DEBUG=faast:* <cmd>
|
16 | * ```
|
17 | *
|
18 | * Logs can also be enabled or disabled programmatically:
|
19 | * ```typescript
|
20 | * import { log } from "faastjs"
|
21 | * log.info.enabled = true;
|
22 | * log.provider.enabled = true;
|
23 | * ```
|
24 | *
|
25 | * Each log outputs specific information:
|
26 | *
|
27 | * `info` - General informational logging.
|
28 | *
|
29 | * `minimal` - Outputs only basic information like the function name created in
|
30 | * the cloud.
|
31 | *
|
32 | * `warn` - Warnings. Enabled by default.
|
33 | *
|
34 | * `gc` - Garbage collection verbose logging.
|
35 | *
|
36 | * `leaks` - Memory leak detector warnings for the cloud function. Enabled by
|
37 | * default.
|
38 | *
|
39 | * `calls` - Verbose logging of each faast.js enabled function invocation.
|
40 | *
|
41 | * `webpack` - Verbose logging from webpack and packaging details.
|
42 | *
|
43 | * `provider` - Verbose logging of each interaction between faast.js runtime and
|
44 | * the provider-specific implementation.
|
45 | *
|
46 | * `awssdk` - Verbose logging of AWS SDK. This can be useful for identifying
|
47 | * which API calls are failing, retrying, or encountering rate limits.
|
48 | *
|
49 | * @public
|
50 | */
|
51 | exports.log = {
|
52 | info: debug("faast:info"),
|
53 | minimal: debug("faast:minimal"),
|
54 | warn: debug("faast:warning"),
|
55 | gc: debug("faast:gc"),
|
56 | leaks: debug("faast:leaks"),
|
57 | calls: debug("faast:calls"),
|
58 | webpack: debug("faast:webpack"),
|
59 | provider: debug("faast:provider"),
|
60 | awssdk: debug("faast:awssdk")
|
61 | };
|
62 | /* istanbul ignore next */
|
63 | function truncate(s, len) {
|
64 | return s.length > len ? `${s.substr(0, len)}...` : s;
|
65 | }
|
66 | function inspectProvider(o) {
|
67 | if (!exports.log.provider.enabled) {
|
68 | return "";
|
69 | }
|
70 | /* istanbul ignore next */
|
71 | return truncate((0, util_1.inspect)(o, false, 3), 1024);
|
72 | }
|
73 | exports.inspectProvider = inspectProvider;
|
74 | exports.log.warn.enabled = true;
|
75 | exports.log.leaks.enabled = true;
|
76 | //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xvZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwrQkFBK0I7QUFDL0IsK0JBQStCO0FBRS9COzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTRDRztBQUNVLFFBQUEsR0FBRyxHQUFHO0lBQ2YsSUFBSSxFQUFFLEtBQUssQ0FBQyxZQUFZLENBQUM7SUFDekIsT0FBTyxFQUFFLEtBQUssQ0FBQyxlQUFlLENBQUM7SUFDL0IsSUFBSSxFQUFFLEtBQUssQ0FBQyxlQUFlLENBQUM7SUFDNUIsRUFBRSxFQUFFLEtBQUssQ0FBQyxVQUFVLENBQUM7SUFDckIsS0FBSyxFQUFFLEtBQUssQ0FBQyxhQUFhLENBQUM7SUFDM0IsS0FBSyxFQUFFLEtBQUssQ0FBQyxhQUFhLENBQUM7SUFDM0IsT0FBTyxFQUFFLEtBQUssQ0FBQyxlQUFlLENBQUM7SUFDL0IsUUFBUSxFQUFFLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQztJQUNqQyxNQUFNLEVBQUUsS0FBSyxDQUFDLGNBQWMsQ0FBQztDQUNoQyxDQUFDO0FBRUYsMkJBQTJCO0FBQzNCLFNBQVMsUUFBUSxDQUFDLENBQVMsRUFBRSxHQUFXO0lBQ3BDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ3pELENBQUM7QUFFRCxTQUFnQixlQUFlLENBQUMsQ0FBUztJQUNyQyxJQUFJLENBQUMsV0FBRyxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUU7UUFDdkIsT0FBTyxFQUFFLENBQUM7S0FDYjtJQUNELDJCQUEyQjtJQUMzQixPQUFPLFFBQVEsQ0FBQyxJQUFBLGNBQU8sRUFBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO0FBQ2hELENBQUM7QUFORCwwQ0FNQztBQUVELFdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztBQUN4QixXQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBkZWJ1ZyBmcm9tIFwiZGVidWdcIjtcbmltcG9ydCB7IGluc3BlY3QgfSBmcm9tIFwidXRpbFwiO1xuXG4vKipcbiAqIEZhYXN0LmpzIGxvZ2dlcnMuXG4gKiBAcmVtYXJrc1xuICogVW5sZXNzIG90aGVyd2lzZSBzcGVjaWZpZWQsIGVhY2ggbG9nIGlzIGRpc2FibGVkIGJ5IGRlZmF1bHQgdW5sZXNzIHRoZSB2YWx1ZVxuICogb2YgdGhlIERFQlVHIGVudmlyb25tZW50IHZhcmlhYmxlIGlzIHNldCB0byB0aGUgY29ycmVzcG9uZGluZyB2YWx1ZS4gRm9yXG4gKiBleGFtcGxlOlxuICpcbiAqIGBgYFxuICogICAkIERFQlVHPWZhYXN0OmluZm8sZmFhc3Q6cHJvdmlkZXIgPGNtZD5cbiAqICAgJCBERUJVRz1mYWFzdDoqIDxjbWQ+XG4gKiBgYGBcbiAqXG4gKiBMb2dzIGNhbiBhbHNvIGJlIGVuYWJsZWQgb3IgZGlzYWJsZWQgcHJvZ3JhbW1hdGljYWxseTpcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGltcG9ydCB7IGxvZyB9IGZyb20gXCJmYWFzdGpzXCJcbiAqIGxvZy5pbmZvLmVuYWJsZWQgPSB0cnVlO1xuICogbG9nLnByb3ZpZGVyLmVuYWJsZWQgPSB0cnVlO1xuICogYGBgXG4gKlxuICogRWFjaCBsb2cgb3V0cHV0cyBzcGVjaWZpYyBpbmZvcm1hdGlvbjpcbiAqXG4gKiBgaW5mb2AgLSBHZW5lcmFsIGluZm9ybWF0aW9uYWwgbG9nZ2luZy5cbiAqXG4gKiBgbWluaW1hbGAgLSBPdXRwdXRzIG9ubHkgYmFzaWMgaW5mb3JtYXRpb24gbGlrZSB0aGUgZnVuY3Rpb24gbmFtZSBjcmVhdGVkIGluXG4gKiB0aGUgY2xvdWQuXG4gKlxuICogYHdhcm5gIC0gV2FybmluZ3MuIEVuYWJsZWQgYnkgZGVmYXVsdC5cbiAqXG4gKiBgZ2NgIC0gR2FyYmFnZSBjb2xsZWN0aW9uIHZlcmJvc2UgbG9nZ2luZy5cbiAqXG4gKiBgbGVha3NgIC0gTWVtb3J5IGxlYWsgZGV0ZWN0b3Igd2FybmluZ3MgZm9yIHRoZSBjbG91ZCBmdW5jdGlvbi4gRW5hYmxlZCBieVxuICogZGVmYXVsdC5cbiAqXG4gKiBgY2FsbHNgIC0gVmVyYm9zZSBsb2dnaW5nIG9mIGVhY2ggZmFhc3QuanMgZW5hYmxlZCBmdW5jdGlvbiBpbnZvY2F0aW9uLlxuICpcbiAqIGB3ZWJwYWNrYCAtIFZlcmJvc2UgbG9nZ2luZyBmcm9tIHdlYnBhY2sgYW5kIHBhY2thZ2luZyBkZXRhaWxzLlxuICpcbiAqIGBwcm92aWRlcmAgLSBWZXJib3NlIGxvZ2dpbmcgb2YgZWFjaCBpbnRlcmFjdGlvbiBiZXR3ZWVuIGZhYXN0LmpzIHJ1bnRpbWUgYW5kXG4gKiB0aGUgcHJvdmlkZXItc3BlY2lmaWMgaW1wbGVtZW50YXRpb24uXG4gKlxuICogYGF3c3Nka2AgLSBWZXJib3NlIGxvZ2dpbmcgb2YgQVdTIFNESy4gVGhpcyBjYW4gYmUgdXNlZnVsIGZvciBpZGVudGlmeWluZ1xuICogd2hpY2ggQVBJIGNhbGxzIGFyZSBmYWlsaW5nLCByZXRyeWluZywgb3IgZW5jb3VudGVyaW5nIHJhdGUgbGltaXRzLlxuICpcbiAqIEBwdWJsaWNcbiAqL1xuZXhwb3J0IGNvbnN0IGxvZyA9IHtcbiAgICBpbmZvOiBkZWJ1ZyhcImZhYXN0OmluZm9cIiksXG4gICAgbWluaW1hbDogZGVidWcoXCJmYWFzdDptaW5pbWFsXCIpLFxuICAgIHdhcm46IGRlYnVnKFwiZmFhc3Q6d2FybmluZ1wiKSxcbiAgICBnYzogZGVidWcoXCJmYWFzdDpnY1wiKSxcbiAgICBsZWFrczogZGVidWcoXCJmYWFzdDpsZWFrc1wiKSxcbiAgICBjYWxsczogZGVidWcoXCJmYWFzdDpjYWxsc1wiKSxcbiAgICB3ZWJwYWNrOiBkZWJ1ZyhcImZhYXN0OndlYnBhY2tcIiksXG4gICAgcHJvdmlkZXI6IGRlYnVnKFwiZmFhc3Q6cHJvdmlkZXJcIiksXG4gICAgYXdzc2RrOiBkZWJ1ZyhcImZhYXN0OmF3c3Nka1wiKVxufTtcblxuLyogaXN0YW5idWwgaWdub3JlIG5leHQgICovXG5mdW5jdGlvbiB0cnVuY2F0ZShzOiBzdHJpbmcsIGxlbjogbnVtYmVyKSB7XG4gICAgcmV0dXJuIHMubGVuZ3RoID4gbGVuID8gYCR7cy5zdWJzdHIoMCwgbGVuKX0uLi5gIDogcztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGluc3BlY3RQcm92aWRlcihvOiBvYmplY3QpIHtcbiAgICBpZiAoIWxvZy5wcm92aWRlci5lbmFibGVkKSB7XG4gICAgICAgIHJldHVybiBcIlwiO1xuICAgIH1cbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAgKi9cbiAgICByZXR1cm4gdHJ1bmNhdGUoaW5zcGVjdChvLCBmYWxzZSwgMyksIDEwMjQpO1xufVxuXG5sb2cud2Fybi5lbmFibGVkID0gdHJ1ZTtcbmxvZy5sZWFrcy5lbmFibGVkID0gdHJ1ZTtcbiJdfQ== |
\ | No newline at end of file |