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(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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xvZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwrQkFBK0I7QUFDL0IsK0JBQStCO0FBRS9COzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTRDRztBQUNVLFFBQUEsR0FBRyxHQUFHO0lBQ2YsSUFBSSxFQUFFLEtBQUssQ0FBQyxZQUFZLENBQUM7SUFDekIsT0FBTyxFQUFFLEtBQUssQ0FBQyxlQUFlLENBQUM7SUFDL0IsSUFBSSxFQUFFLEtBQUssQ0FBQyxlQUFlLENBQUM7SUFDNUIsRUFBRSxFQUFFLEtBQUssQ0FBQyxVQUFVLENBQUM7SUFDckIsS0FBSyxFQUFFLEtBQUssQ0FBQyxhQUFhLENBQUM7SUFDM0IsS0FBSyxFQUFFLEtBQUssQ0FBQyxhQUFhLENBQUM7SUFDM0IsT0FBTyxFQUFFLEtBQUssQ0FBQyxlQUFlLENBQUM7SUFDL0IsUUFBUSxFQUFFLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQztJQUNqQyxNQUFNLEVBQUUsS0FBSyxDQUFDLGNBQWMsQ0FBQztDQUNoQyxDQUFDO0FBRUYsMkJBQTJCO0FBQzNCLFNBQVMsUUFBUSxDQUFDLENBQVMsRUFBRSxHQUFXO0lBQ3BDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ3pELENBQUM7QUFFRCxTQUFnQixlQUFlLENBQUMsQ0FBUztJQUNyQyxJQUFJLENBQUMsV0FBRyxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUU7UUFDdkIsT0FBTyxFQUFFLENBQUM7S0FDYjtJQUNELDJCQUEyQjtJQUMzQixPQUFPLFFBQVEsQ0FBQyxjQUFPLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztBQUNoRCxDQUFDO0FBTkQsMENBTUM7QUFFRCxXQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7QUFDeEIsV0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgZGVidWcgZnJvbSBcImRlYnVnXCI7XG5pbXBvcnQgeyBpbnNwZWN0IH0gZnJvbSBcInV0aWxcIjtcblxuLyoqXG4gKiBGYWFzdC5qcyBsb2dnZXJzLlxuICogQHJlbWFya3NcbiAqIFVubGVzcyBvdGhlcndpc2Ugc3BlY2lmaWVkLCBlYWNoIGxvZyBpcyBkaXNhYmxlZCBieSBkZWZhdWx0IHVubGVzcyB0aGUgdmFsdWVcbiAqIG9mIHRoZSBERUJVRyBlbnZpcm9ubWVudCB2YXJpYWJsZSBpcyBzZXQgdG8gdGhlIGNvcnJlc3BvbmRpbmcgdmFsdWUuIEZvclxuICogZXhhbXBsZTpcbiAqXG4gKiBgYGBcbiAqICAgJCBERUJVRz1mYWFzdDppbmZvLGZhYXN0OnByb3ZpZGVyIDxjbWQ+XG4gKiAgICQgREVCVUc9ZmFhc3Q6KiA8Y21kPlxuICogYGBgXG4gKlxuICogTG9ncyBjYW4gYWxzbyBiZSBlbmFibGVkIG9yIGRpc2FibGVkIHByb2dyYW1tYXRpY2FsbHk6XG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBpbXBvcnQgeyBsb2cgfSBmcm9tIFwiZmFhc3Rqc1wiXG4gKiBsb2cuaW5mby5lbmFibGVkID0gdHJ1ZTtcbiAqIGxvZy5wcm92aWRlci5lbmFibGVkID0gdHJ1ZTtcbiAqIGBgYFxuICpcbiAqIEVhY2ggbG9nIG91dHB1dHMgc3BlY2lmaWMgaW5mb3JtYXRpb246XG4gKlxuICogYGluZm9gIC0gR2VuZXJhbCBpbmZvcm1hdGlvbmFsIGxvZ2dpbmcuXG4gKlxuICogYG1pbmltYWxgIC0gT3V0cHV0cyBvbmx5IGJhc2ljIGluZm9ybWF0aW9uIGxpa2UgdGhlIGZ1bmN0aW9uIG5hbWUgY3JlYXRlZCBpblxuICogdGhlIGNsb3VkLlxuICpcbiAqIGB3YXJuYCAtIFdhcm5pbmdzLiBFbmFibGVkIGJ5IGRlZmF1bHQuXG4gKlxuICogYGdjYCAtIEdhcmJhZ2UgY29sbGVjdGlvbiB2ZXJib3NlIGxvZ2dpbmcuXG4gKlxuICogYGxlYWtzYCAtIE1lbW9yeSBsZWFrIGRldGVjdG9yIHdhcm5pbmdzIGZvciB0aGUgY2xvdWQgZnVuY3Rpb24uIEVuYWJsZWQgYnlcbiAqIGRlZmF1bHQuXG4gKlxuICogYGNhbGxzYCAtIFZlcmJvc2UgbG9nZ2luZyBvZiBlYWNoIGZhYXN0LmpzIGVuYWJsZWQgZnVuY3Rpb24gaW52b2NhdGlvbi5cbiAqXG4gKiBgd2VicGFja2AgLSBWZXJib3NlIGxvZ2dpbmcgZnJvbSB3ZWJwYWNrIGFuZCBwYWNrYWdpbmcgZGV0YWlscy5cbiAqXG4gKiBgcHJvdmlkZXJgIC0gVmVyYm9zZSBsb2dnaW5nIG9mIGVhY2ggaW50ZXJhY3Rpb24gYmV0d2VlbiBmYWFzdC5qcyBydW50aW1lIGFuZFxuICogdGhlIHByb3ZpZGVyLXNwZWNpZmljIGltcGxlbWVudGF0aW9uLlxuICpcbiAqIGBhd3NzZGtgIC0gVmVyYm9zZSBsb2dnaW5nIG9mIEFXUyBTREsuIFRoaXMgY2FuIGJlIHVzZWZ1bCBmb3IgaWRlbnRpZnlpbmdcbiAqIHdoaWNoIEFQSSBjYWxscyBhcmUgZmFpbGluZywgcmV0cnlpbmcsIG9yIGVuY291bnRlcmluZyByYXRlIGxpbWl0cy5cbiAqXG4gKiBAcHVibGljXG4gKi9cbmV4cG9ydCBjb25zdCBsb2cgPSB7XG4gICAgaW5mbzogZGVidWcoXCJmYWFzdDppbmZvXCIpLFxuICAgIG1pbmltYWw6IGRlYnVnKFwiZmFhc3Q6bWluaW1hbFwiKSxcbiAgICB3YXJuOiBkZWJ1ZyhcImZhYXN0Ondhcm5pbmdcIiksXG4gICAgZ2M6IGRlYnVnKFwiZmFhc3Q6Z2NcIiksXG4gICAgbGVha3M6IGRlYnVnKFwiZmFhc3Q6bGVha3NcIiksXG4gICAgY2FsbHM6IGRlYnVnKFwiZmFhc3Q6Y2FsbHNcIiksXG4gICAgd2VicGFjazogZGVidWcoXCJmYWFzdDp3ZWJwYWNrXCIpLFxuICAgIHByb3ZpZGVyOiBkZWJ1ZyhcImZhYXN0OnByb3ZpZGVyXCIpLFxuICAgIGF3c3NkazogZGVidWcoXCJmYWFzdDphd3NzZGtcIilcbn07XG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICAqL1xuZnVuY3Rpb24gdHJ1bmNhdGUoczogc3RyaW5nLCBsZW46IG51bWJlcikge1xuICAgIHJldHVybiBzLmxlbmd0aCA+IGxlbiA/IGAke3Muc3Vic3RyKDAsIGxlbil9Li4uYCA6IHM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpbnNwZWN0UHJvdmlkZXIobzogb2JqZWN0KSB7XG4gICAgaWYgKCFsb2cucHJvdmlkZXIuZW5hYmxlZCkge1xuICAgICAgICByZXR1cm4gXCJcIjtcbiAgICB9XG4gICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgICovXG4gICAgcmV0dXJuIHRydW5jYXRlKGluc3BlY3QobywgZmFsc2UsIDMpLCAxMDI0KTtcbn1cblxubG9nLndhcm4uZW5hYmxlZCA9IHRydWU7XG5sb2cubGVha3MuZW5hYmxlZCA9IHRydWU7XG4iXX0= |
\ | No newline at end of file |