@lopatnov/express-reverse-proxy 1.1.0 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (952) hide show
  1. package/.git/COMMIT_EDITMSG +1 -1
  2. package/.git/FETCH_HEAD +2 -1
  3. package/.git/ORIG_HEAD +1 -1
  4. package/.git/index +0 -0
  5. package/.git/logs/HEAD +6 -0
  6. package/.git/logs/refs/heads/master +6 -0
  7. package/.git/logs/refs/remotes/origin/dependabot/npm_and_yarn/async-2.6.4 +1 -0
  8. package/.git/logs/refs/remotes/origin/dependabot/npm_and_yarn/follow-redirects-1.14.8 +1 -0
  9. package/.git/logs/refs/remotes/origin/dependabot/npm_and_yarn/follow-redirects-1.15.1 +1 -0
  10. package/.git/logs/refs/remotes/origin/dependabot/npm_and_yarn/minimist-1.2.6 +2 -0
  11. package/.git/logs/refs/remotes/origin/dependabot/npm_and_yarn/moment-2.29.4 +2 -0
  12. package/.git/logs/refs/remotes/origin/dependabot/npm_and_yarn/moment-timezone-0.5.37 +1 -0
  13. package/.git/logs/refs/remotes/origin/dependabot/npm_and_yarn/vm2-3.9.10 +1 -0
  14. package/.git/logs/refs/remotes/origin/dependabot/npm_and_yarn/vm2-3.9.7 +1 -0
  15. package/.git/logs/refs/remotes/origin/master +6 -0
  16. package/.git/objects/05/7279a8af3092f351c4ae469bd547adfc76f7a4 +0 -0
  17. package/.git/objects/05/c82a6f0ea9c0a164aad76ced44fec680b8604a +0 -0
  18. package/.git/objects/06/051cdbe81b43e531f1ca0fa765cb4c91d91ea1 +0 -0
  19. package/.git/objects/0f/981da089a027ab4deb1f0c7864dfcee50bd0f1 +0 -0
  20. package/.git/objects/10/eee3c8fa2c12b77e0fed1f2fad1b967c267b53 +0 -0
  21. package/.git/objects/12/3d8423180da838ba0af1284aae79e1a955c98b +0 -0
  22. package/.git/objects/14/3d5eca2e4998e6899de6049e38b4bf2559e4e0 +0 -0
  23. package/.git/objects/15/2c053b9a24234f6bec33280204f11e5d9dda6b +0 -0
  24. package/.git/objects/16/a3a924f2a6924622e739eebe236ef713030c8b +0 -0
  25. package/.git/objects/1d/559712ab5ec703cf8e866b24b8dfb3b321ff03 +0 -0
  26. package/.git/objects/1f/4bda8b3565949d26f700322b343189d29bffdf +3 -0
  27. package/.git/objects/22/034a86b3f190407ef7a2c0eaf212ddaa686f16 +0 -0
  28. package/.git/objects/25/9462200ffecedc2eef36f888eb503e3f2e81ec +0 -0
  29. package/.git/objects/28/220d00bdbed408d7a98ece866fb5af1e7d1395 +0 -0
  30. package/.git/objects/33/f5906b4664855687be03e7d6d93092c9daf955 +0 -0
  31. package/.git/objects/39/fb332adf9703decb515ff845b2c93ee7bdd191 +0 -0
  32. package/.git/objects/3a/4d74b53dc2acdf09452ccf6c30100a929f557d +0 -0
  33. package/.git/objects/3b/2d52de53f2b2dd1e2ea057a01c0d0553236d21 +0 -0
  34. package/.git/objects/3b/f4ee4b9fb6b872ee61b1a392113d208ca7c762 +0 -0
  35. package/.git/objects/3c/43aaf00d26ff1acbc0a237198fc30baa6e25be +0 -0
  36. package/.git/objects/3f/8e368a352ad9a944b90208dee1188e4330a2f1 +1 -0
  37. package/.git/objects/44/e27cef5a809b8c2d36871c5193198142431a63 +0 -0
  38. package/.git/objects/46/6d53dd4e6463d5e899cd61b80077af9100e3a8 +0 -0
  39. package/.git/objects/4b/47d7aeb054f8ab581690b65dcb12308ba90b6c +0 -0
  40. package/.git/objects/4e/3353916674e6e2d72452b43f1706f5916d2c89 +2 -0
  41. package/.git/objects/54/e5124ded8dd3a8ed0b19720474203dbc5c52be +0 -0
  42. package/.git/objects/58/2cf7a6f56fd9e6f5084a88c953da4013167b94 +0 -0
  43. package/.git/objects/5b/c7e4571e0196bc7913762a38c0698ab23b4b40 +0 -0
  44. package/.git/objects/5d/cc561a09ef24892a16f23881962624a126f9ca +0 -0
  45. package/.git/objects/5e/3da9aaf50f9faecdc9cb1ebeab3fba5a9e8fb4 +0 -0
  46. package/.git/objects/5f/7c7f1513de49814f849f66114759c6daef837d +0 -0
  47. package/.git/objects/64/967bb9704893349c92a31f5291fc0eb2c13fa9 +0 -0
  48. package/.git/objects/6c/ef2f57e30fc6bc765e9ebfe3bf096e84101cc1 +0 -0
  49. package/.git/objects/6e/22bebb02332d3ff461dca72d0ecb8f1d44835f +0 -0
  50. package/.git/objects/6f/220ef271ba804052014c8a5d406a1438efef64 +0 -0
  51. package/.git/objects/70/ad2e555e35eb73420e7f7edd4177a20635e795 +0 -0
  52. package/.git/objects/7f/3277bd2a1e2b01b395caf1e0e8999c1682c223 +0 -0
  53. package/.git/objects/83/5696f89cedc2214df0ffc788f08c4d58a97c95 +0 -0
  54. package/.git/objects/84/b568065a1ee10c396c790029aef4fc7e990dcb +0 -0
  55. package/.git/objects/85/b13d9fef3c897366d43df137438cd28f915087 +0 -0
  56. package/.git/objects/95/d70526c36e8b3e5c814f64645623371d57946d +0 -0
  57. package/.git/objects/98/898b1fd7b14788c34282603fca629e813ba546 +0 -0
  58. package/.git/objects/9d/31d2fc81e780e5e2de1c51b8e705005e94d59d +0 -0
  59. package/.git/objects/a2/955bbd248d85219a4264c1b21dc7c2d0481d11 +0 -0
  60. package/.git/objects/a4/a1ac412998cdfe316b39e29e5462057602c1d6 +0 -0
  61. package/.git/objects/b6/b55dd9c407d6e3de1075ecf67a7f229496d75e +0 -0
  62. package/.git/objects/bb/269a37e471f96225f825accb8fec832556baeb +0 -0
  63. package/.git/objects/be/6b92cd3ae0f90b9b3fae0ca6661931dae6c83a +0 -0
  64. package/.git/objects/c0/7164be325d2c63ae2d899f18569a83e7b4ba67 +0 -0
  65. package/.git/objects/c0/e2ecce02f4d74977c088b07ddae70af1b0204b +0 -0
  66. package/.git/objects/ca/4942a1100642a56ccf314d1e9c4db6da1ee5d2 +0 -0
  67. package/.git/objects/cc/6904a6336d2a954e954bb0d1e50aea08c83494 +0 -0
  68. package/.git/objects/cd/084b222732a6e80a2440e9ecdd773aedb197e6 +0 -0
  69. package/.git/objects/d5/2717c6fd9c3deeb0ff98151d64927d2a6234c6 +0 -0
  70. package/.git/objects/d9/981364d8a15210123a3585846031c62eaecd8f +0 -0
  71. package/.git/objects/db/454cbee6da5938914837cda981dea069f7f409 +0 -0
  72. package/.git/objects/dd/b3b7a413e020bae0d7a4bec93871427e70d257 +0 -0
  73. package/.git/objects/e5/2673bb0d2f0856fee0cef63f2018cf38aaf12a +0 -0
  74. package/.git/objects/e9/94cd70c55ab2bbd98761c2e607daf9b2e97f8f +1 -0
  75. package/.git/objects/e9/bd949a381501bde67f21ba4d00c670cd65663c +0 -0
  76. package/.git/objects/eb/eb5a56b15dab25752fdaa5c407aa876cbf23b3 +0 -0
  77. package/.git/objects/ef/2403cca5e0283f168e74e1e0548f0bee6ba64b +5 -0
  78. package/.git/objects/ef/de9a8166073eaffcbdb334a63e93ab2e0e2bb2 +3 -0
  79. package/.git/objects/f1/8fc2e1985b84cd24de30829a7a4a9c691340c9 +0 -0
  80. package/.git/objects/f2/9fbde97f3b548ee6ec891b4b411707ebf0561a +0 -0
  81. package/.git/objects/f5/f2285b984ce7ef265cf79ce10ba51dcc9f9ad6 +0 -0
  82. package/.git/objects/fd/a93fd9e44b59cfec306dd85a72db21360569a4 +0 -0
  83. package/.git/refs/heads/master +1 -1
  84. package/.git/refs/remotes/origin/dependabot/npm_and_yarn/async-2.6.4 +1 -0
  85. package/.git/refs/remotes/origin/dependabot/npm_and_yarn/follow-redirects-1.14.8 +1 -0
  86. package/.git/refs/remotes/origin/dependabot/npm_and_yarn/follow-redirects-1.15.1 +1 -0
  87. package/.git/refs/remotes/origin/dependabot/npm_and_yarn/minimist-1.2.6 +1 -0
  88. package/.git/refs/remotes/origin/dependabot/npm_and_yarn/moment-2.29.4 +1 -0
  89. package/.git/refs/remotes/origin/dependabot/npm_and_yarn/moment-timezone-0.5.37 +1 -0
  90. package/.git/refs/remotes/origin/dependabot/npm_and_yarn/vm2-3.9.10 +1 -0
  91. package/.git/refs/remotes/origin/dependabot/npm_and_yarn/vm2-3.9.7 +1 -0
  92. package/.git/refs/remotes/origin/master +1 -1
  93. package/.git/tortoisegit.data +0 -0
  94. package/.git/tortoisegit.index +0 -0
  95. package/.vscode/launch.json +14 -16
  96. package/LICENSE +185 -185
  97. package/README.md +41 -14
  98. package/node_modules/@eslint/eslintrc/LICENSE +19 -0
  99. package/node_modules/@eslint/eslintrc/README.md +64 -0
  100. package/node_modules/@eslint/eslintrc/conf/config-schema.js +79 -0
  101. package/node_modules/@eslint/eslintrc/conf/environments.js +203 -0
  102. package/node_modules/@eslint/eslintrc/lib/cascading-config-array-factory.js +533 -0
  103. package/node_modules/@eslint/eslintrc/lib/config-array/config-array.js +523 -0
  104. package/node_modules/@eslint/eslintrc/lib/config-array/config-dependency.js +115 -0
  105. package/node_modules/@eslint/eslintrc/lib/config-array/extracted-config.js +145 -0
  106. package/node_modules/@eslint/eslintrc/lib/config-array/ignore-pattern.js +238 -0
  107. package/node_modules/@eslint/eslintrc/lib/config-array/index.js +19 -0
  108. package/node_modules/@eslint/eslintrc/lib/config-array/override-tester.js +225 -0
  109. package/node_modules/@eslint/eslintrc/lib/config-array-factory.js +1133 -0
  110. package/node_modules/@eslint/eslintrc/lib/flat-compat.js +307 -0
  111. package/node_modules/@eslint/eslintrc/lib/index-universal.js +29 -0
  112. package/node_modules/@eslint/eslintrc/lib/index.js +56 -0
  113. package/node_modules/@eslint/eslintrc/lib/shared/ajv.js +191 -0
  114. package/node_modules/@eslint/eslintrc/lib/shared/config-ops.js +135 -0
  115. package/node_modules/@eslint/eslintrc/lib/shared/config-validator.js +325 -0
  116. package/node_modules/@eslint/eslintrc/lib/shared/deprecation-warnings.js +63 -0
  117. package/node_modules/@eslint/eslintrc/lib/shared/naming.js +96 -0
  118. package/node_modules/@eslint/eslintrc/lib/shared/relative-module-resolver.js +42 -0
  119. package/node_modules/@eslint/eslintrc/lib/shared/types.js +149 -0
  120. package/node_modules/@eslint/eslintrc/package.json +82 -0
  121. package/node_modules/@eslint/eslintrc/universal.js +9 -0
  122. package/node_modules/@humanwhocodes/config-array/CHANGELOG.md +107 -0
  123. package/node_modules/@humanwhocodes/config-array/LICENSE +201 -0
  124. package/node_modules/@humanwhocodes/config-array/README.md +303 -0
  125. package/node_modules/@humanwhocodes/config-array/api.js +761 -0
  126. package/node_modules/@humanwhocodes/config-array/package.json +60 -0
  127. package/node_modules/@humanwhocodes/gitignore-to-minimatch/LICENSE +201 -0
  128. package/node_modules/@humanwhocodes/gitignore-to-minimatch/README.md +78 -0
  129. package/node_modules/@humanwhocodes/gitignore-to-minimatch/package.json +61 -0
  130. package/node_modules/@humanwhocodes/module-importer/CHANGELOG.md +15 -0
  131. package/node_modules/@humanwhocodes/module-importer/LICENSE +201 -0
  132. package/node_modules/@humanwhocodes/module-importer/README.md +80 -0
  133. package/node_modules/@humanwhocodes/module-importer/package.json +65 -0
  134. package/node_modules/@humanwhocodes/module-importer/src/module-importer.cjs +81 -0
  135. package/node_modules/@humanwhocodes/module-importer/src/module-importer.js +22 -0
  136. package/node_modules/@humanwhocodes/object-schema/.eslintrc.js +29 -0
  137. package/node_modules/@humanwhocodes/object-schema/.github/workflows/nodejs-test.yml +27 -0
  138. package/node_modules/@humanwhocodes/object-schema/.github/workflows/release-please.yml +39 -0
  139. package/node_modules/@humanwhocodes/object-schema/CHANGELOG.md +8 -0
  140. package/node_modules/@humanwhocodes/object-schema/LICENSE +29 -0
  141. package/node_modules/@humanwhocodes/object-schema/README.md +234 -0
  142. package/node_modules/@humanwhocodes/object-schema/package.json +33 -0
  143. package/node_modules/@humanwhocodes/object-schema/src/index.js +7 -0
  144. package/node_modules/@humanwhocodes/object-schema/src/merge-strategy.js +53 -0
  145. package/node_modules/@humanwhocodes/object-schema/src/object-schema.js +235 -0
  146. package/node_modules/@humanwhocodes/object-schema/src/validation-strategy.js +102 -0
  147. package/node_modules/@humanwhocodes/object-schema/tests/merge-strategy.js +66 -0
  148. package/node_modules/@humanwhocodes/object-schema/tests/object-schema.js +611 -0
  149. package/node_modules/@humanwhocodes/object-schema/tests/validation-strategy.js +186 -0
  150. package/node_modules/@nodelib/fs.scandir/LICENSE +21 -0
  151. package/node_modules/@nodelib/fs.scandir/README.md +171 -0
  152. package/node_modules/@nodelib/fs.scandir/out/adapters/fs.d.ts +20 -0
  153. package/node_modules/@nodelib/fs.scandir/out/adapters/fs.js +19 -0
  154. package/node_modules/@nodelib/fs.scandir/out/constants.d.ts +4 -0
  155. package/node_modules/@nodelib/fs.scandir/out/constants.js +17 -0
  156. package/node_modules/@nodelib/fs.scandir/out/index.d.ts +12 -0
  157. package/node_modules/@nodelib/fs.scandir/out/index.js +26 -0
  158. package/node_modules/@nodelib/fs.scandir/out/providers/async.d.ts +7 -0
  159. package/node_modules/@nodelib/fs.scandir/out/providers/async.js +104 -0
  160. package/node_modules/@nodelib/fs.scandir/out/providers/common.d.ts +1 -0
  161. package/node_modules/@nodelib/fs.scandir/out/providers/common.js +13 -0
  162. package/node_modules/@nodelib/fs.scandir/out/providers/sync.d.ts +5 -0
  163. package/node_modules/@nodelib/fs.scandir/out/providers/sync.js +54 -0
  164. package/node_modules/@nodelib/fs.scandir/out/settings.d.ts +20 -0
  165. package/node_modules/@nodelib/fs.scandir/out/settings.js +24 -0
  166. package/node_modules/@nodelib/fs.scandir/out/types/index.d.ts +20 -0
  167. package/node_modules/@nodelib/fs.scandir/out/types/index.js +2 -0
  168. package/node_modules/@nodelib/fs.scandir/out/utils/fs.d.ts +2 -0
  169. package/node_modules/@nodelib/fs.scandir/out/utils/fs.js +19 -0
  170. package/node_modules/@nodelib/fs.scandir/out/utils/index.d.ts +2 -0
  171. package/node_modules/@nodelib/fs.scandir/out/utils/index.js +5 -0
  172. package/node_modules/@nodelib/fs.scandir/package.json +44 -0
  173. package/node_modules/@nodelib/fs.stat/LICENSE +21 -0
  174. package/node_modules/@nodelib/fs.stat/README.md +126 -0
  175. package/node_modules/@nodelib/fs.stat/out/adapters/fs.d.ts +13 -0
  176. package/node_modules/@nodelib/fs.stat/out/adapters/fs.js +17 -0
  177. package/node_modules/@nodelib/fs.stat/out/index.d.ts +12 -0
  178. package/node_modules/@nodelib/fs.stat/out/index.js +26 -0
  179. package/node_modules/@nodelib/fs.stat/out/providers/async.d.ts +4 -0
  180. package/node_modules/@nodelib/fs.stat/out/providers/async.js +36 -0
  181. package/node_modules/@nodelib/fs.stat/out/providers/sync.d.ts +3 -0
  182. package/node_modules/@nodelib/fs.stat/out/providers/sync.js +23 -0
  183. package/node_modules/@nodelib/fs.stat/out/settings.d.ts +16 -0
  184. package/node_modules/@nodelib/fs.stat/out/settings.js +16 -0
  185. package/node_modules/@nodelib/fs.stat/out/types/index.d.ts +4 -0
  186. package/node_modules/@nodelib/fs.stat/out/types/index.js +2 -0
  187. package/node_modules/@nodelib/fs.stat/package.json +37 -0
  188. package/node_modules/@nodelib/fs.walk/LICENSE +21 -0
  189. package/node_modules/@nodelib/fs.walk/README.md +215 -0
  190. package/node_modules/@nodelib/fs.walk/out/index.d.ts +14 -0
  191. package/node_modules/@nodelib/fs.walk/out/index.js +34 -0
  192. package/node_modules/@nodelib/fs.walk/out/providers/async.d.ts +12 -0
  193. package/node_modules/@nodelib/fs.walk/out/providers/async.js +30 -0
  194. package/node_modules/@nodelib/fs.walk/out/providers/index.d.ts +4 -0
  195. package/node_modules/@nodelib/fs.walk/out/providers/index.js +9 -0
  196. package/node_modules/@nodelib/fs.walk/out/providers/stream.d.ts +12 -0
  197. package/node_modules/@nodelib/fs.walk/out/providers/stream.js +34 -0
  198. package/node_modules/@nodelib/fs.walk/out/providers/sync.d.ts +10 -0
  199. package/node_modules/@nodelib/fs.walk/out/providers/sync.js +14 -0
  200. package/node_modules/@nodelib/fs.walk/out/readers/async.d.ts +30 -0
  201. package/node_modules/@nodelib/fs.walk/out/readers/async.js +97 -0
  202. package/node_modules/@nodelib/fs.walk/out/readers/common.d.ts +7 -0
  203. package/node_modules/@nodelib/fs.walk/out/readers/common.js +31 -0
  204. package/node_modules/@nodelib/fs.walk/out/readers/reader.d.ts +6 -0
  205. package/node_modules/@nodelib/fs.walk/out/readers/reader.js +11 -0
  206. package/node_modules/@nodelib/fs.walk/out/readers/sync.d.ts +15 -0
  207. package/node_modules/@nodelib/fs.walk/out/readers/sync.js +59 -0
  208. package/node_modules/@nodelib/fs.walk/out/settings.d.ts +30 -0
  209. package/node_modules/@nodelib/fs.walk/out/settings.js +26 -0
  210. package/node_modules/@nodelib/fs.walk/out/types/index.d.ts +8 -0
  211. package/node_modules/@nodelib/fs.walk/out/types/index.js +2 -0
  212. package/node_modules/@nodelib/fs.walk/package.json +44 -0
  213. package/node_modules/@opencensus/core/LICENSE +202 -0
  214. package/node_modules/@opencensus/core/README.md +108 -0
  215. package/node_modules/@opencensus/core/build/src/common/console-logger.d.ts +60 -0
  216. package/node_modules/@opencensus/core/build/src/common/console-logger.js +97 -0
  217. package/node_modules/@opencensus/core/build/src/common/time-util.d.ts +41 -0
  218. package/node_modules/@opencensus/core/build/src/common/time-util.js +74 -0
  219. package/node_modules/@opencensus/core/build/src/common/types.d.ts +29 -0
  220. package/node_modules/@opencensus/core/build/src/common/types.js +18 -0
  221. package/node_modules/@opencensus/core/build/src/common/validations.d.ts +31 -0
  222. package/node_modules/@opencensus/core/build/src/common/validations.js +46 -0
  223. package/node_modules/@opencensus/core/build/src/common/version.d.ts +16 -0
  224. package/node_modules/@opencensus/core/build/src/common/version.js +24 -0
  225. package/node_modules/@opencensus/core/build/src/exporters/console-exporter.d.ts +70 -0
  226. package/node_modules/@opencensus/core/build/src/exporters/console-exporter.js +91 -0
  227. package/node_modules/@opencensus/core/build/src/exporters/exporter-buffer.d.ts +59 -0
  228. package/node_modules/@opencensus/core/build/src/exporters/exporter-buffer.js +104 -0
  229. package/node_modules/@opencensus/core/build/src/exporters/types.d.ts +52 -0
  230. package/node_modules/@opencensus/core/build/src/exporters/types.js +18 -0
  231. package/node_modules/@opencensus/core/build/src/index.d.ts +50 -0
  232. package/node_modules/@opencensus/core/build/src/index.js +59 -0
  233. package/node_modules/@opencensus/core/build/src/internal/clock.d.ts +43 -0
  234. package/node_modules/@opencensus/core/build/src/internal/clock.js +68 -0
  235. package/node_modules/@opencensus/core/build/src/internal/cls-ah.d.ts +20 -0
  236. package/node_modules/@opencensus/core/build/src/internal/cls-ah.js +128 -0
  237. package/node_modules/@opencensus/core/build/src/internal/cls.d.ts +28 -0
  238. package/node_modules/@opencensus/core/build/src/internal/cls.js +45 -0
  239. package/node_modules/@opencensus/core/build/src/internal/string-utils.d.ts +35 -0
  240. package/node_modules/@opencensus/core/build/src/internal/string-utils.js +49 -0
  241. package/node_modules/@opencensus/core/build/src/internal/util.d.ts +16 -0
  242. package/node_modules/@opencensus/core/build/src/internal/util.js +34 -0
  243. package/node_modules/@opencensus/core/build/src/metrics/export/base-metric-producer.d.ts +27 -0
  244. package/node_modules/@opencensus/core/build/src/metrics/export/base-metric-producer.js +25 -0
  245. package/node_modules/@opencensus/core/build/src/metrics/export/metric-producer-manager.d.ts +17 -0
  246. package/node_modules/@opencensus/core/build/src/metrics/export/metric-producer-manager.js +70 -0
  247. package/node_modules/@opencensus/core/build/src/metrics/export/types.d.ts +331 -0
  248. package/node_modules/@opencensus/core/build/src/metrics/export/types.js +69 -0
  249. package/node_modules/@opencensus/core/build/src/metrics/gauges/derived-gauge.d.ts +110 -0
  250. package/node_modules/@opencensus/core/build/src/metrics/gauges/derived-gauge.js +150 -0
  251. package/node_modules/@opencensus/core/build/src/metrics/gauges/gauge.d.ts +114 -0
  252. package/node_modules/@opencensus/core/build/src/metrics/gauges/gauge.js +162 -0
  253. package/node_modules/@opencensus/core/build/src/metrics/gauges/types.d.ts +45 -0
  254. package/node_modules/@opencensus/core/build/src/metrics/gauges/types.js +18 -0
  255. package/node_modules/@opencensus/core/build/src/metrics/metric-component.d.ts +29 -0
  256. package/node_modules/@opencensus/core/build/src/metrics/metric-component.js +40 -0
  257. package/node_modules/@opencensus/core/build/src/metrics/metric-registry.d.ts +93 -0
  258. package/node_modules/@opencensus/core/build/src/metrics/metric-registry.js +152 -0
  259. package/node_modules/@opencensus/core/build/src/metrics/metrics.d.ts +27 -0
  260. package/node_modules/@opencensus/core/build/src/metrics/metrics.js +35 -0
  261. package/node_modules/@opencensus/core/build/src/metrics/utils.d.ts +30 -0
  262. package/node_modules/@opencensus/core/build/src/metrics/utils.js +42 -0
  263. package/node_modules/@opencensus/core/build/src/resource/resource.d.ts +98 -0
  264. package/node_modules/@opencensus/core/build/src/resource/resource.js +167 -0
  265. package/node_modules/@opencensus/core/build/src/resource/types.d.ts +31 -0
  266. package/node_modules/@opencensus/core/build/src/resource/types.js +18 -0
  267. package/node_modules/@opencensus/core/build/src/stats/bucket-boundaries.d.ts +49 -0
  268. package/node_modules/@opencensus/core/build/src/stats/bucket-boundaries.js +90 -0
  269. package/node_modules/@opencensus/core/build/src/stats/metric-producer.d.ts +34 -0
  270. package/node_modules/@opencensus/core/build/src/stats/metric-producer.js +40 -0
  271. package/node_modules/@opencensus/core/build/src/stats/metric-utils.d.ts +40 -0
  272. package/node_modules/@opencensus/core/build/src/stats/metric-utils.js +83 -0
  273. package/node_modules/@opencensus/core/build/src/stats/recorder.d.ts +26 -0
  274. package/node_modules/@opencensus/core/build/src/stats/recorder.js +76 -0
  275. package/node_modules/@opencensus/core/build/src/stats/stats.d.ts +97 -0
  276. package/node_modules/@opencensus/core/build/src/stats/stats.js +169 -0
  277. package/node_modules/@opencensus/core/build/src/stats/types.d.ts +242 -0
  278. package/node_modules/@opencensus/core/build/src/stats/types.js +48 -0
  279. package/node_modules/@opencensus/core/build/src/stats/view.d.ts +119 -0
  280. package/node_modules/@opencensus/core/build/src/stats/view.js +194 -0
  281. package/node_modules/@opencensus/core/build/src/tags/tag-map.d.ts +26 -0
  282. package/node_modules/@opencensus/core/build/src/tags/tag-map.js +45 -0
  283. package/node_modules/@opencensus/core/build/src/tags/types.d.ts +25 -0
  284. package/node_modules/@opencensus/core/build/src/tags/types.js +18 -0
  285. package/node_modules/@opencensus/core/build/src/tags/validation.d.ts +20 -0
  286. package/node_modules/@opencensus/core/build/src/tags/validation.js +41 -0
  287. package/node_modules/@opencensus/core/build/src/trace/config/types.d.ts +82 -0
  288. package/node_modules/@opencensus/core/build/src/trace/config/types.js +18 -0
  289. package/node_modules/@opencensus/core/build/src/trace/instrumentation/base-plugin.d.ts +77 -0
  290. package/node_modules/@opencensus/core/build/src/trace/instrumentation/base-plugin.js +113 -0
  291. package/node_modules/@opencensus/core/build/src/trace/instrumentation/types.d.ts +56 -0
  292. package/node_modules/@opencensus/core/build/src/trace/instrumentation/types.js +18 -0
  293. package/node_modules/@opencensus/core/build/src/trace/model/root-span.d.ts +53 -0
  294. package/node_modules/@opencensus/core/build/src/trace/model/root-span.js +111 -0
  295. package/node_modules/@opencensus/core/build/src/trace/model/span-base.d.ts +131 -0
  296. package/node_modules/@opencensus/core/build/src/trace/model/span-base.js +210 -0
  297. package/node_modules/@opencensus/core/build/src/trace/model/span.d.ts +35 -0
  298. package/node_modules/@opencensus/core/build/src/trace/model/span.js +66 -0
  299. package/node_modules/@opencensus/core/build/src/trace/model/tracer.d.ts +112 -0
  300. package/node_modules/@opencensus/core/build/src/trace/model/tracer.js +241 -0
  301. package/node_modules/@opencensus/core/build/src/trace/model/types.d.ts +455 -0
  302. package/node_modules/@opencensus/core/build/src/trace/model/types.js +198 -0
  303. package/node_modules/@opencensus/core/build/src/trace/propagation/types.d.ts +36 -0
  304. package/node_modules/@opencensus/core/build/src/trace/propagation/types.js +18 -0
  305. package/node_modules/@opencensus/core/build/src/trace/sampler/sampler.d.ts +72 -0
  306. package/node_modules/@opencensus/core/build/src/trace/sampler/sampler.js +129 -0
  307. package/node_modules/@opencensus/core/build/src/trace/sampler/types.d.ts +29 -0
  308. package/node_modules/@opencensus/core/build/src/trace/sampler/types.js +18 -0
  309. package/node_modules/@opencensus/core/build/src/trace/types.d.ts +46 -0
  310. package/node_modules/@opencensus/core/build/src/trace/types.js +18 -0
  311. package/node_modules/@opencensus/core/node_modules/.bin/semver +12 -0
  312. package/node_modules/@opencensus/core/node_modules/.bin/semver.cmd +17 -0
  313. package/node_modules/@opencensus/core/node_modules/.bin/semver.ps1 +28 -0
  314. package/node_modules/@opencensus/core/node_modules/semver/CHANGELOG.md +39 -0
  315. package/node_modules/@opencensus/core/node_modules/semver/LICENSE +15 -0
  316. package/node_modules/@opencensus/core/node_modules/semver/README.md +412 -0
  317. package/node_modules/@opencensus/core/node_modules/semver/bin/semver +160 -0
  318. package/node_modules/@opencensus/core/node_modules/semver/package.json +28 -0
  319. package/node_modules/@opencensus/core/node_modules/semver/range.bnf +16 -0
  320. package/node_modules/@opencensus/core/node_modules/semver/semver.js +1483 -0
  321. package/node_modules/@opencensus/core/package.json +68 -0
  322. package/node_modules/@opencensus/propagation-b3/LICENSE +202 -0
  323. package/node_modules/@opencensus/propagation-b3/README.md +46 -0
  324. package/node_modules/@opencensus/propagation-b3/build/src/b3-format.d.ts +35 -0
  325. package/node_modules/@opencensus/propagation-b3/build/src/b3-format.js +77 -0
  326. package/node_modules/@opencensus/propagation-b3/build/src/index.d.ts +16 -0
  327. package/node_modules/@opencensus/propagation-b3/build/src/index.js +22 -0
  328. package/node_modules/@opencensus/propagation-b3/node_modules/.bin/semver +12 -0
  329. package/node_modules/@opencensus/propagation-b3/node_modules/.bin/semver.cmd +17 -0
  330. package/node_modules/@opencensus/propagation-b3/node_modules/.bin/semver.ps1 +28 -0
  331. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/LICENSE +202 -0
  332. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/README.md +96 -0
  333. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/common/console-logger.d.ts +51 -0
  334. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/common/console-logger.js +106 -0
  335. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/common/types.d.ts +29 -0
  336. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/common/types.js +18 -0
  337. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/common/validations.d.ts +31 -0
  338. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/common/validations.js +46 -0
  339. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/common/version.d.ts +1 -0
  340. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/common/version.js +24 -0
  341. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/exporters/console-exporter.d.ts +64 -0
  342. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/exporters/console-exporter.js +84 -0
  343. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/exporters/exporter-buffer.d.ts +44 -0
  344. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/exporters/exporter-buffer.js +104 -0
  345. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/exporters/types.d.ts +44 -0
  346. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/exporters/types.js +18 -0
  347. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/index.d.ts +37 -0
  348. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/index.js +45 -0
  349. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/internal/clock.d.ts +43 -0
  350. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/internal/clock.js +68 -0
  351. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/internal/cls-ah.d.ts +5 -0
  352. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/internal/cls-ah.js +128 -0
  353. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/internal/cls.d.ts +28 -0
  354. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/internal/cls.js +45 -0
  355. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/internal/string-utils.d.ts +35 -0
  356. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/internal/string-utils.js +49 -0
  357. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/internal/util.d.ts +1 -0
  358. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/internal/util.js +34 -0
  359. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/metrics/export/metric-producer.d.ts +27 -0
  360. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/metrics/export/metric-producer.js +25 -0
  361. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/metrics/export/types.d.ts +309 -0
  362. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/metrics/export/types.js +69 -0
  363. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/metrics/gauges/derived-gauge.d.ts +95 -0
  364. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/metrics/gauges/derived-gauge.js +151 -0
  365. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/metrics/gauges/gauge.d.ts +99 -0
  366. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/metrics/gauges/gauge.js +161 -0
  367. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/metrics/gauges/types.d.ts +45 -0
  368. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/metrics/gauges/types.js +18 -0
  369. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/metrics/metric-registry.d.ts +79 -0
  370. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/metrics/metric-registry.js +152 -0
  371. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/metrics/metrics.d.ts +26 -0
  372. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/metrics/metrics.js +34 -0
  373. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/metrics/utils.d.ts +30 -0
  374. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/metrics/utils.js +42 -0
  375. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/resource/resource.d.ts +81 -0
  376. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/resource/resource.js +160 -0
  377. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/resource/types.d.ts +31 -0
  378. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/resource/types.js +18 -0
  379. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/stats/bucket-boundaries.d.ts +49 -0
  380. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/stats/bucket-boundaries.js +90 -0
  381. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/stats/metric-producer.d.ts +34 -0
  382. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/stats/metric-producer.js +40 -0
  383. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/stats/metric-utils.d.ts +39 -0
  384. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/stats/metric-utils.js +84 -0
  385. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/stats/recorder.d.ts +23 -0
  386. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/stats/recorder.js +70 -0
  387. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/stats/stats.d.ts +85 -0
  388. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/stats/stats.js +145 -0
  389. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/stats/types.d.ts +188 -0
  390. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/stats/types.js +48 -0
  391. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/stats/view.d.ts +118 -0
  392. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/stats/view.js +201 -0
  393. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/trace/config/types.d.ts +68 -0
  394. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/trace/config/types.js +18 -0
  395. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/trace/instrumentation/base-plugin.d.ts +73 -0
  396. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/trace/instrumentation/base-plugin.js +110 -0
  397. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/trace/instrumentation/types.d.ts +45 -0
  398. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/trace/instrumentation/types.js +18 -0
  399. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/trace/model/root-span.d.ts +38 -0
  400. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/trace/model/root-span.js +108 -0
  401. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/trace/model/span-base.d.ts +114 -0
  402. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/trace/model/span-base.js +165 -0
  403. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/trace/model/span.d.ts +20 -0
  404. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/trace/model/span.js +65 -0
  405. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/trace/model/tracer.d.ts +95 -0
  406. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/trace/model/tracer.js +229 -0
  407. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/trace/model/types.d.ts +245 -0
  408. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/trace/model/types.js +18 -0
  409. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/trace/propagation/types.d.ts +36 -0
  410. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/trace/propagation/types.js +18 -0
  411. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/trace/sampler/sampler.d.ts +56 -0
  412. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/trace/sampler/sampler.js +94 -0
  413. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/trace/sampler/types.d.ts +29 -0
  414. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/trace/sampler/types.js +18 -0
  415. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/trace/types.d.ts +46 -0
  416. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/build/src/trace/types.js +18 -0
  417. package/node_modules/@opencensus/propagation-b3/node_modules/@opencensus/core/package.json +63 -0
  418. package/node_modules/@opencensus/propagation-b3/node_modules/semver/CHANGELOG.md +39 -0
  419. package/node_modules/@opencensus/propagation-b3/node_modules/semver/LICENSE +15 -0
  420. package/node_modules/@opencensus/propagation-b3/node_modules/semver/README.md +412 -0
  421. package/node_modules/@opencensus/propagation-b3/node_modules/semver/bin/semver +160 -0
  422. package/node_modules/@opencensus/propagation-b3/node_modules/semver/package.json +28 -0
  423. package/node_modules/@opencensus/propagation-b3/node_modules/semver/range.bnf +16 -0
  424. package/node_modules/@opencensus/propagation-b3/node_modules/semver/semver.js +1483 -0
  425. package/node_modules/@opencensus/propagation-b3/package.json +56 -0
  426. package/node_modules/@pm2/agent/.drone.jsonnet +104 -0
  427. package/node_modules/@pm2/agent/.mocharc.yml +12 -0
  428. package/node_modules/@pm2/agent/.vscode/launch.json +29 -0
  429. package/node_modules/@pm2/agent/LICENSE +661 -0
  430. package/node_modules/@pm2/agent/README.md +95 -0
  431. package/node_modules/@pm2/agent/config.js +30 -0
  432. package/node_modules/@pm2/agent/constants.js +98 -0
  433. package/node_modules/@pm2/agent/index.js +2 -0
  434. package/node_modules/@pm2/agent/node_modules/.bin/semver +12 -0
  435. package/node_modules/@pm2/agent/node_modules/.bin/semver.cmd +17 -0
  436. package/node_modules/@pm2/agent/node_modules/.bin/semver.ps1 +28 -0
  437. package/node_modules/@pm2/agent/node_modules/chalk/index.d.ts +411 -0
  438. package/node_modules/@pm2/agent/node_modules/chalk/license +9 -0
  439. package/node_modules/@pm2/agent/node_modules/chalk/package.json +63 -0
  440. package/node_modules/@pm2/agent/node_modules/chalk/readme.md +304 -0
  441. package/node_modules/@pm2/agent/node_modules/chalk/source/index.js +233 -0
  442. package/node_modules/@pm2/agent/node_modules/chalk/source/templates.js +134 -0
  443. package/node_modules/@pm2/agent/node_modules/chalk/source/util.js +39 -0
  444. package/node_modules/@pm2/agent/node_modules/semver/CHANGELOG.md +101 -0
  445. package/node_modules/@pm2/agent/node_modules/semver/LICENSE +15 -0
  446. package/node_modules/@pm2/agent/node_modules/semver/README.md +563 -0
  447. package/node_modules/@pm2/agent/node_modules/semver/bin/semver.js +173 -0
  448. package/node_modules/@pm2/agent/node_modules/semver/classes/comparator.js +139 -0
  449. package/node_modules/@pm2/agent/node_modules/semver/classes/index.js +5 -0
  450. package/node_modules/@pm2/agent/node_modules/semver/classes/range.js +453 -0
  451. package/node_modules/@pm2/agent/node_modules/semver/classes/semver.js +290 -0
  452. package/node_modules/@pm2/agent/node_modules/semver/functions/clean.js +6 -0
  453. package/node_modules/@pm2/agent/node_modules/semver/functions/cmp.js +48 -0
  454. package/node_modules/@pm2/agent/node_modules/semver/functions/coerce.js +51 -0
  455. package/node_modules/@pm2/agent/node_modules/semver/functions/compare-build.js +7 -0
  456. package/node_modules/@pm2/agent/node_modules/semver/functions/compare-loose.js +3 -0
  457. package/node_modules/@pm2/agent/node_modules/semver/functions/compare.js +5 -0
  458. package/node_modules/@pm2/agent/node_modules/semver/functions/diff.js +23 -0
  459. package/node_modules/@pm2/agent/node_modules/semver/functions/eq.js +3 -0
  460. package/node_modules/@pm2/agent/node_modules/semver/functions/gt.js +3 -0
  461. package/node_modules/@pm2/agent/node_modules/semver/functions/gte.js +3 -0
  462. package/node_modules/@pm2/agent/node_modules/semver/functions/inc.js +15 -0
  463. package/node_modules/@pm2/agent/node_modules/semver/functions/lt.js +3 -0
  464. package/node_modules/@pm2/agent/node_modules/semver/functions/lte.js +3 -0
  465. package/node_modules/@pm2/agent/node_modules/semver/functions/major.js +3 -0
  466. package/node_modules/@pm2/agent/node_modules/semver/functions/minor.js +3 -0
  467. package/node_modules/@pm2/agent/node_modules/semver/functions/neq.js +3 -0
  468. package/node_modules/@pm2/agent/node_modules/semver/functions/parse.js +37 -0
  469. package/node_modules/@pm2/agent/node_modules/semver/functions/patch.js +3 -0
  470. package/node_modules/@pm2/agent/node_modules/semver/functions/prerelease.js +6 -0
  471. package/node_modules/@pm2/agent/node_modules/semver/functions/rcompare.js +3 -0
  472. package/node_modules/@pm2/agent/node_modules/semver/functions/rsort.js +3 -0
  473. package/node_modules/@pm2/agent/node_modules/semver/functions/satisfies.js +10 -0
  474. package/node_modules/@pm2/agent/node_modules/semver/functions/sort.js +3 -0
  475. package/node_modules/@pm2/agent/node_modules/semver/functions/valid.js +6 -0
  476. package/node_modules/@pm2/agent/node_modules/semver/index.js +47 -0
  477. package/node_modules/@pm2/agent/node_modules/semver/internal/constants.js +17 -0
  478. package/node_modules/@pm2/agent/node_modules/semver/internal/debug.js +9 -0
  479. package/node_modules/@pm2/agent/node_modules/semver/internal/identifiers.js +23 -0
  480. package/node_modules/@pm2/agent/node_modules/semver/internal/re.js +179 -0
  481. package/node_modules/@pm2/agent/node_modules/semver/package.json +38 -0
  482. package/node_modules/@pm2/agent/node_modules/semver/preload.js +2 -0
  483. package/node_modules/@pm2/agent/node_modules/semver/range.bnf +16 -0
  484. package/node_modules/@pm2/agent/node_modules/semver/ranges/gtr.js +4 -0
  485. package/node_modules/@pm2/agent/node_modules/semver/ranges/intersects.js +7 -0
  486. package/node_modules/@pm2/agent/node_modules/semver/ranges/ltr.js +4 -0
  487. package/node_modules/@pm2/agent/node_modules/semver/ranges/max-satisfying.js +25 -0
  488. package/node_modules/@pm2/agent/node_modules/semver/ranges/min-satisfying.js +24 -0
  489. package/node_modules/@pm2/agent/node_modules/semver/ranges/min-version.js +57 -0
  490. package/node_modules/@pm2/agent/node_modules/semver/ranges/outside.js +80 -0
  491. package/node_modules/@pm2/agent/node_modules/semver/ranges/simplify.js +44 -0
  492. package/node_modules/@pm2/agent/node_modules/semver/ranges/to-comparators.js +8 -0
  493. package/node_modules/@pm2/agent/node_modules/semver/ranges/valid.js +11 -0
  494. package/node_modules/@pm2/agent/package.json +41 -0
  495. package/node_modules/@pm2/agent/src/InteractorClient.js +502 -0
  496. package/node_modules/@pm2/agent/src/InteractorDaemon.js +452 -0
  497. package/node_modules/@pm2/agent/src/PM2Client.js +112 -0
  498. package/node_modules/@pm2/agent/src/PM2Interface.js +180 -0
  499. package/node_modules/@pm2/agent/src/TransporterInterface.js +173 -0
  500. package/node_modules/@pm2/agent/src/Utility.js +395 -0
  501. package/node_modules/@pm2/agent/src/WatchDog.js +70 -0
  502. package/node_modules/@pm2/agent/src/push/DataRetriever.js +77 -0
  503. package/node_modules/@pm2/agent/src/push/PushInteractor.js +206 -0
  504. package/node_modules/@pm2/agent/src/push/TransactionAggregator.js +670 -0
  505. package/node_modules/@pm2/agent/src/reverse/ReverseInteractor.js +128 -0
  506. package/node_modules/@pm2/agent/src/transporters/Transporter.js +129 -0
  507. package/node_modules/@pm2/agent/src/transporters/WebsocketTransport.js +204 -0
  508. package/node_modules/@pm2/agent/src/utils/BinaryHeap.js +135 -0
  509. package/node_modules/@pm2/agent/src/utils/EDS.js +111 -0
  510. package/node_modules/@pm2/agent/src/utils/probes/Histogram.js +204 -0
  511. package/node_modules/@pm2/agent/src/utils/units.js +10 -0
  512. package/node_modules/@pm2/io/.drone.jsonnet +114 -0
  513. package/node_modules/@pm2/io/.mocharc.js +17 -0
  514. package/node_modules/@pm2/io/.vscode/settings.json +3 -0
  515. package/node_modules/@pm2/io/CHANGELOG.md +13 -0
  516. package/node_modules/@pm2/io/LICENSE.md +201 -0
  517. package/node_modules/@pm2/io/NOTES.md +73 -0
  518. package/node_modules/@pm2/io/README.md +574 -0
  519. package/node_modules/@pm2/io/build/main/census/config/default-config.d.ts +8 -0
  520. package/node_modules/@pm2/io/build/main/census/config/default-config.js +12 -0
  521. package/node_modules/@pm2/io/build/main/census/constants.d.ts +9 -0
  522. package/node_modules/@pm2/io/build/main/census/constants.js +12 -0
  523. package/node_modules/@pm2/io/build/main/census/exporter.d.ts +18 -0
  524. package/node_modules/@pm2/io/build/main/census/exporter.js +103 -0
  525. package/node_modules/@pm2/io/build/main/census/instrumentation/ext-types.d.ts +12 -0
  526. package/node_modules/@pm2/io/build/main/census/instrumentation/ext-types.js +1 -0
  527. package/node_modules/@pm2/io/build/main/census/instrumentation/plugin-loader.d.ts +14 -0
  528. package/node_modules/@pm2/io/build/main/census/instrumentation/plugin-loader.js +94 -0
  529. package/node_modules/@pm2/io/build/main/census/plugins/express.d.ts +13 -0
  530. package/node_modules/@pm2/io/build/main/census/plugins/express.js +120 -0
  531. package/node_modules/@pm2/io/build/main/census/plugins/http.d.ts +46 -0
  532. package/node_modules/@pm2/io/build/main/census/plugins/http.js +325 -0
  533. package/node_modules/@pm2/io/build/main/census/plugins/http2.d.ts +17 -0
  534. package/node_modules/@pm2/io/build/main/census/plugins/http2.js +163 -0
  535. package/node_modules/@pm2/io/build/main/census/plugins/https.d.ts +9 -0
  536. package/node_modules/@pm2/io/build/main/census/plugins/https.js +61 -0
  537. package/node_modules/@pm2/io/build/main/census/plugins/ioredis.d.ts +23 -0
  538. package/node_modules/@pm2/io/build/main/census/plugins/ioredis.js +89 -0
  539. package/node_modules/@pm2/io/build/main/census/plugins/mongodb.d.ts +21 -0
  540. package/node_modules/@pm2/io/build/main/census/plugins/mongodb.js +128 -0
  541. package/node_modules/@pm2/io/build/main/census/plugins/mysql.d.ts +21 -0
  542. package/node_modules/@pm2/io/build/main/census/plugins/mysql.js +82 -0
  543. package/node_modules/@pm2/io/build/main/census/plugins/mysql2.d.ts +21 -0
  544. package/node_modules/@pm2/io/build/main/census/plugins/mysql2.js +82 -0
  545. package/node_modules/@pm2/io/build/main/census/plugins/net.d.ts +8 -0
  546. package/node_modules/@pm2/io/build/main/census/plugins/net.js +79 -0
  547. package/node_modules/@pm2/io/build/main/census/plugins/pg.d.ts +23 -0
  548. package/node_modules/@pm2/io/build/main/census/plugins/pg.js +148 -0
  549. package/node_modules/@pm2/io/build/main/census/plugins/redis.d.ts +19 -0
  550. package/node_modules/@pm2/io/build/main/census/plugins/redis.js +114 -0
  551. package/node_modules/@pm2/io/build/main/census/plugins/vue.d.ts +12 -0
  552. package/node_modules/@pm2/io/build/main/census/plugins/vue.js +78 -0
  553. package/node_modules/@pm2/io/build/main/census/tracer.d.ts +19 -0
  554. package/node_modules/@pm2/io/build/main/census/tracer.js +67 -0
  555. package/node_modules/@pm2/io/build/main/configuration.d.ts +6 -0
  556. package/node_modules/@pm2/io/build/main/configuration.js +125 -0
  557. package/node_modules/@pm2/io/build/main/constants.d.ts +5 -0
  558. package/node_modules/@pm2/io/build/main/constants.js +15 -0
  559. package/node_modules/@pm2/io/build/main/featureManager.d.ts +14 -0
  560. package/node_modules/@pm2/io/build/main/featureManager.js +105 -0
  561. package/node_modules/@pm2/io/build/main/features/dependencies.d.ts +7 -0
  562. package/node_modules/@pm2/io/build/main/features/dependencies.js +45 -0
  563. package/node_modules/@pm2/io/build/main/features/entrypoint.d.ts +11 -0
  564. package/node_modules/@pm2/io/build/main/features/entrypoint.js +52 -0
  565. package/node_modules/@pm2/io/build/main/features/events.d.ts +8 -0
  566. package/node_modules/@pm2/io/build/main/features/events.js +44 -0
  567. package/node_modules/@pm2/io/build/main/features/metrics.d.ts +24 -0
  568. package/node_modules/@pm2/io/build/main/features/metrics.js +89 -0
  569. package/node_modules/@pm2/io/build/main/features/notify.d.ts +23 -0
  570. package/node_modules/@pm2/io/build/main/features/notify.js +224 -0
  571. package/node_modules/@pm2/io/build/main/features/profiling.d.ts +18 -0
  572. package/node_modules/@pm2/io/build/main/features/profiling.js +68 -0
  573. package/node_modules/@pm2/io/build/main/features/tracing.d.ts +25 -0
  574. package/node_modules/@pm2/io/build/main/features/tracing.js +149 -0
  575. package/node_modules/@pm2/io/build/main/index.d.ts +3 -0
  576. package/node_modules/@pm2/io/build/main/index.js +8 -0
  577. package/node_modules/@pm2/io/build/main/metrics/eventLoopMetrics.d.ts +17 -0
  578. package/node_modules/@pm2/io/build/main/metrics/eventLoopMetrics.js +128 -0
  579. package/node_modules/@pm2/io/build/main/metrics/httpMetrics.d.ts +18 -0
  580. package/node_modules/@pm2/io/build/main/metrics/httpMetrics.js +178 -0
  581. package/node_modules/@pm2/io/build/main/metrics/network.d.ts +15 -0
  582. package/node_modules/@pm2/io/build/main/metrics/network.js +121 -0
  583. package/node_modules/@pm2/io/build/main/metrics/runtime.d.ts +16 -0
  584. package/node_modules/@pm2/io/build/main/metrics/runtime.js +153 -0
  585. package/node_modules/@pm2/io/build/main/metrics/v8.d.ts +23 -0
  586. package/node_modules/@pm2/io/build/main/metrics/v8.js +100 -0
  587. package/node_modules/@pm2/io/build/main/pmx.d.ts +54 -0
  588. package/node_modules/@pm2/io/build/main/pmx.js +283 -0
  589. package/node_modules/@pm2/io/build/main/profilers/addonProfiler.d.ts +16 -0
  590. package/node_modules/@pm2/io/build/main/profilers/addonProfiler.js +172 -0
  591. package/node_modules/@pm2/io/build/main/profilers/inspectorProfiler.d.ts +18 -0
  592. package/node_modules/@pm2/io/build/main/profilers/inspectorProfiler.js +268 -0
  593. package/node_modules/@pm2/io/build/main/serviceManager.d.ts +7 -0
  594. package/node_modules/@pm2/io/build/main/serviceManager.js +19 -0
  595. package/node_modules/@pm2/io/build/main/services/actions.d.ts +20 -0
  596. package/node_modules/@pm2/io/build/main/services/actions.js +146 -0
  597. package/node_modules/@pm2/io/build/main/services/inspector.d.ts +8 -0
  598. package/node_modules/@pm2/io/build/main/services/inspector.js +42 -0
  599. package/node_modules/@pm2/io/build/main/services/metrics.d.ts +63 -0
  600. package/node_modules/@pm2/io/build/main/services/metrics.js +186 -0
  601. package/node_modules/@pm2/io/build/main/services/runtimeStats.d.ts +10 -0
  602. package/node_modules/@pm2/io/build/main/services/runtimeStats.js +49 -0
  603. package/node_modules/@pm2/io/build/main/services/transport.d.ts +22 -0
  604. package/node_modules/@pm2/io/build/main/services/transport.js +13 -0
  605. package/node_modules/@pm2/io/build/main/transports/IPCTransport.d.ts +17 -0
  606. package/node_modules/@pm2/io/build/main/transports/IPCTransport.js +102 -0
  607. package/node_modules/@pm2/io/build/main/transports/WebsocketTransport.d.ts +0 -0
  608. package/node_modules/@pm2/io/build/main/transports/WebsocketTransport.js +1 -0
  609. package/node_modules/@pm2/io/build/main/utils/BinaryHeap.d.ts +16 -0
  610. package/node_modules/@pm2/io/build/main/utils/BinaryHeap.js +109 -0
  611. package/node_modules/@pm2/io/build/main/utils/EDS.d.ts +21 -0
  612. package/node_modules/@pm2/io/build/main/utils/EDS.js +93 -0
  613. package/node_modules/@pm2/io/build/main/utils/EWMA.d.ts +12 -0
  614. package/node_modules/@pm2/io/build/main/utils/EWMA.js +26 -0
  615. package/node_modules/@pm2/io/build/main/utils/autocast.d.ts +13 -0
  616. package/node_modules/@pm2/io/build/main/utils/autocast.js +49 -0
  617. package/node_modules/@pm2/io/build/main/utils/metrics/counter.d.ts +10 -0
  618. package/node_modules/@pm2/io/build/main/utils/metrics/counter.js +28 -0
  619. package/node_modules/@pm2/io/build/main/utils/metrics/gauge.d.ts +7 -0
  620. package/node_modules/@pm2/io/build/main/utils/metrics/gauge.js +20 -0
  621. package/node_modules/@pm2/io/build/main/utils/metrics/histogram.d.ts +43 -0
  622. package/node_modules/@pm2/io/build/main/utils/metrics/histogram.js +160 -0
  623. package/node_modules/@pm2/io/build/main/utils/metrics/meter.d.ts +12 -0
  624. package/node_modules/@pm2/io/build/main/utils/metrics/meter.js +36 -0
  625. package/node_modules/@pm2/io/build/main/utils/miscellaneous.d.ts +4 -0
  626. package/node_modules/@pm2/io/build/main/utils/miscellaneous.js +17 -0
  627. package/node_modules/@pm2/io/build/main/utils/module.d.ts +5 -0
  628. package/node_modules/@pm2/io/build/main/utils/module.js +53 -0
  629. package/node_modules/@pm2/io/build/main/utils/stackParser.d.ts +37 -0
  630. package/node_modules/@pm2/io/build/main/utils/stackParser.js +125 -0
  631. package/node_modules/@pm2/io/build/main/utils/transactionAggregator.d.ts +74 -0
  632. package/node_modules/@pm2/io/build/main/utils/transactionAggregator.js +317 -0
  633. package/node_modules/@pm2/io/build/main/utils/units.d.ts +10 -0
  634. package/node_modules/@pm2/io/build/main/utils/units.js +16 -0
  635. package/node_modules/@pm2/io/docker-compose.yml +27 -0
  636. package/node_modules/@pm2/io/docs/README.md +106 -0
  637. package/node_modules/@pm2/io/node_modules/.bin/semver +12 -0
  638. package/node_modules/@pm2/io/node_modules/.bin/semver.cmd +17 -0
  639. package/node_modules/@pm2/io/node_modules/.bin/semver.ps1 +28 -0
  640. package/node_modules/@pm2/io/node_modules/async/CHANGELOG.md +278 -0
  641. package/node_modules/@pm2/io/node_modules/async/LICENSE +19 -0
  642. package/node_modules/@pm2/io/node_modules/async/README.md +56 -0
  643. package/node_modules/@pm2/io/node_modules/async/all.js +50 -0
  644. package/node_modules/@pm2/io/node_modules/async/allLimit.js +42 -0
  645. package/node_modules/@pm2/io/node_modules/async/allSeries.js +37 -0
  646. package/node_modules/@pm2/io/node_modules/async/any.js +52 -0
  647. package/node_modules/@pm2/io/node_modules/async/anyLimit.js +43 -0
  648. package/node_modules/@pm2/io/node_modules/async/anySeries.js +38 -0
  649. package/node_modules/@pm2/io/node_modules/async/apply.js +68 -0
  650. package/node_modules/@pm2/io/node_modules/async/applyEach.js +51 -0
  651. package/node_modules/@pm2/io/node_modules/async/applyEachSeries.js +37 -0
  652. package/node_modules/@pm2/io/node_modules/async/asyncify.js +110 -0
  653. package/node_modules/@pm2/io/node_modules/async/auto.js +289 -0
  654. package/node_modules/@pm2/io/node_modules/async/autoInject.js +170 -0
  655. package/node_modules/@pm2/io/node_modules/async/bower.json +17 -0
  656. package/node_modules/@pm2/io/node_modules/async/cargo.js +94 -0
  657. package/node_modules/@pm2/io/node_modules/async/compose.js +58 -0
  658. package/node_modules/@pm2/io/node_modules/async/concat.js +43 -0
  659. package/node_modules/@pm2/io/node_modules/async/concatLimit.js +65 -0
  660. package/node_modules/@pm2/io/node_modules/async/concatSeries.js +36 -0
  661. package/node_modules/@pm2/io/node_modules/async/constant.js +66 -0
  662. package/node_modules/@pm2/io/node_modules/async/detect.js +61 -0
  663. package/node_modules/@pm2/io/node_modules/async/detectLimit.js +48 -0
  664. package/node_modules/@pm2/io/node_modules/async/detectSeries.js +38 -0
  665. package/node_modules/@pm2/io/node_modules/async/dir.js +43 -0
  666. package/node_modules/@pm2/io/node_modules/async/doDuring.js +66 -0
  667. package/node_modules/@pm2/io/node_modules/async/doUntil.js +39 -0
  668. package/node_modules/@pm2/io/node_modules/async/doWhilst.js +59 -0
  669. package/node_modules/@pm2/io/node_modules/async/during.js +76 -0
  670. package/node_modules/@pm2/io/node_modules/async/each.js +82 -0
  671. package/node_modules/@pm2/io/node_modules/async/eachLimit.js +45 -0
  672. package/node_modules/@pm2/io/node_modules/async/eachOf.js +111 -0
  673. package/node_modules/@pm2/io/node_modules/async/eachOfLimit.js +41 -0
  674. package/node_modules/@pm2/io/node_modules/async/eachOfSeries.js +35 -0
  675. package/node_modules/@pm2/io/node_modules/async/eachSeries.js +37 -0
  676. package/node_modules/@pm2/io/node_modules/async/ensureAsync.js +73 -0
  677. package/node_modules/@pm2/io/node_modules/async/every.js +50 -0
  678. package/node_modules/@pm2/io/node_modules/async/everyLimit.js +42 -0
  679. package/node_modules/@pm2/io/node_modules/async/everySeries.js +37 -0
  680. package/node_modules/@pm2/io/node_modules/async/filter.js +45 -0
  681. package/node_modules/@pm2/io/node_modules/async/filterLimit.js +37 -0
  682. package/node_modules/@pm2/io/node_modules/async/filterSeries.js +35 -0
  683. package/node_modules/@pm2/io/node_modules/async/find.js +61 -0
  684. package/node_modules/@pm2/io/node_modules/async/findLimit.js +48 -0
  685. package/node_modules/@pm2/io/node_modules/async/findSeries.js +38 -0
  686. package/node_modules/@pm2/io/node_modules/async/foldl.js +78 -0
  687. package/node_modules/@pm2/io/node_modules/async/foldr.js +44 -0
  688. package/node_modules/@pm2/io/node_modules/async/forEach.js +82 -0
  689. package/node_modules/@pm2/io/node_modules/async/forEachLimit.js +45 -0
  690. package/node_modules/@pm2/io/node_modules/async/forEachOf.js +111 -0
  691. package/node_modules/@pm2/io/node_modules/async/forEachOfLimit.js +41 -0
  692. package/node_modules/@pm2/io/node_modules/async/forEachOfSeries.js +35 -0
  693. package/node_modules/@pm2/io/node_modules/async/forEachSeries.js +37 -0
  694. package/node_modules/@pm2/io/node_modules/async/forever.js +65 -0
  695. package/node_modules/@pm2/io/node_modules/async/groupBy.js +54 -0
  696. package/node_modules/@pm2/io/node_modules/async/groupByLimit.js +71 -0
  697. package/node_modules/@pm2/io/node_modules/async/groupBySeries.js +37 -0
  698. package/node_modules/@pm2/io/node_modules/async/index.js +582 -0
  699. package/node_modules/@pm2/io/node_modules/async/inject.js +78 -0
  700. package/node_modules/@pm2/io/node_modules/async/internal/DoublyLinkedList.js +88 -0
  701. package/node_modules/@pm2/io/node_modules/async/internal/applyEach.js +38 -0
  702. package/node_modules/@pm2/io/node_modules/async/internal/breakLoop.js +9 -0
  703. package/node_modules/@pm2/io/node_modules/async/internal/consoleFunc.js +42 -0
  704. package/node_modules/@pm2/io/node_modules/async/internal/createTester.js +44 -0
  705. package/node_modules/@pm2/io/node_modules/async/internal/doLimit.js +12 -0
  706. package/node_modules/@pm2/io/node_modules/async/internal/doParallel.js +23 -0
  707. package/node_modules/@pm2/io/node_modules/async/internal/doParallelLimit.js +23 -0
  708. package/node_modules/@pm2/io/node_modules/async/internal/eachOfLimit.js +74 -0
  709. package/node_modules/@pm2/io/node_modules/async/internal/filter.js +75 -0
  710. package/node_modules/@pm2/io/node_modules/async/internal/findGetResult.js +10 -0
  711. package/node_modules/@pm2/io/node_modules/async/internal/getIterator.js +13 -0
  712. package/node_modules/@pm2/io/node_modules/async/internal/initialParams.js +21 -0
  713. package/node_modules/@pm2/io/node_modules/async/internal/iterator.js +61 -0
  714. package/node_modules/@pm2/io/node_modules/async/internal/map.js +35 -0
  715. package/node_modules/@pm2/io/node_modules/async/internal/notId.js +10 -0
  716. package/node_modules/@pm2/io/node_modules/async/internal/once.js +15 -0
  717. package/node_modules/@pm2/io/node_modules/async/internal/onlyOnce.js +15 -0
  718. package/node_modules/@pm2/io/node_modules/async/internal/parallel.js +42 -0
  719. package/node_modules/@pm2/io/node_modules/async/internal/queue.js +204 -0
  720. package/node_modules/@pm2/io/node_modules/async/internal/reject.js +21 -0
  721. package/node_modules/@pm2/io/node_modules/async/internal/setImmediate.js +42 -0
  722. package/node_modules/@pm2/io/node_modules/async/internal/slice.js +16 -0
  723. package/node_modules/@pm2/io/node_modules/async/internal/withoutIndex.js +12 -0
  724. package/node_modules/@pm2/io/node_modules/async/internal/wrapAsync.js +25 -0
  725. package/node_modules/@pm2/io/node_modules/async/log.js +41 -0
  726. package/node_modules/@pm2/io/node_modules/async/map.js +54 -0
  727. package/node_modules/@pm2/io/node_modules/async/mapLimit.js +37 -0
  728. package/node_modules/@pm2/io/node_modules/async/mapSeries.js +36 -0
  729. package/node_modules/@pm2/io/node_modules/async/mapValues.js +63 -0
  730. package/node_modules/@pm2/io/node_modules/async/mapValuesLimit.js +61 -0
  731. package/node_modules/@pm2/io/node_modules/async/mapValuesSeries.js +37 -0
  732. package/node_modules/@pm2/io/node_modules/async/memoize.js +101 -0
  733. package/node_modules/@pm2/io/node_modules/async/nextTick.js +51 -0
  734. package/node_modules/@pm2/io/node_modules/async/package.json +80 -0
  735. package/node_modules/@pm2/io/node_modules/async/parallel.js +90 -0
  736. package/node_modules/@pm2/io/node_modules/async/parallelLimit.js +40 -0
  737. package/node_modules/@pm2/io/node_modules/async/priorityQueue.js +98 -0
  738. package/node_modules/@pm2/io/node_modules/async/queue.js +130 -0
  739. package/node_modules/@pm2/io/node_modules/async/race.js +70 -0
  740. package/node_modules/@pm2/io/node_modules/async/reduce.js +78 -0
  741. package/node_modules/@pm2/io/node_modules/async/reduceRight.js +44 -0
  742. package/node_modules/@pm2/io/node_modules/async/reflect.js +81 -0
  743. package/node_modules/@pm2/io/node_modules/async/reflectAll.js +105 -0
  744. package/node_modules/@pm2/io/node_modules/async/reject.js +45 -0
  745. package/node_modules/@pm2/io/node_modules/async/rejectLimit.js +37 -0
  746. package/node_modules/@pm2/io/node_modules/async/rejectSeries.js +35 -0
  747. package/node_modules/@pm2/io/node_modules/async/retry.js +156 -0
  748. package/node_modules/@pm2/io/node_modules/async/retryable.js +65 -0
  749. package/node_modules/@pm2/io/node_modules/async/select.js +45 -0
  750. package/node_modules/@pm2/io/node_modules/async/selectLimit.js +37 -0
  751. package/node_modules/@pm2/io/node_modules/async/selectSeries.js +35 -0
  752. package/node_modules/@pm2/io/node_modules/async/seq.js +91 -0
  753. package/node_modules/@pm2/io/node_modules/async/series.js +85 -0
  754. package/node_modules/@pm2/io/node_modules/async/setImmediate.js +45 -0
  755. package/node_modules/@pm2/io/node_modules/async/some.js +52 -0
  756. package/node_modules/@pm2/io/node_modules/async/someLimit.js +43 -0
  757. package/node_modules/@pm2/io/node_modules/async/someSeries.js +38 -0
  758. package/node_modules/@pm2/io/node_modules/async/sortBy.js +91 -0
  759. package/node_modules/@pm2/io/node_modules/async/timeout.js +89 -0
  760. package/node_modules/@pm2/io/node_modules/async/times.js +50 -0
  761. package/node_modules/@pm2/io/node_modules/async/timesLimit.js +42 -0
  762. package/node_modules/@pm2/io/node_modules/async/timesSeries.js +32 -0
  763. package/node_modules/@pm2/io/node_modules/async/transform.js +87 -0
  764. package/node_modules/@pm2/io/node_modules/async/tryEach.js +81 -0
  765. package/node_modules/@pm2/io/node_modules/async/unmemoize.js +25 -0
  766. package/node_modules/@pm2/io/node_modules/async/until.js +41 -0
  767. package/node_modules/@pm2/io/node_modules/async/waterfall.js +113 -0
  768. package/node_modules/@pm2/io/node_modules/async/whilst.js +72 -0
  769. package/node_modules/@pm2/io/node_modules/async/wrapSync.js +110 -0
  770. package/node_modules/@pm2/io/node_modules/eventemitter2/CHANGELOG.md +122 -0
  771. package/node_modules/@pm2/io/node_modules/eventemitter2/LICENSE.txt +21 -0
  772. package/node_modules/@pm2/io/node_modules/eventemitter2/README.md +809 -0
  773. package/node_modules/@pm2/io/node_modules/eventemitter2/eventemitter2.d.ts +150 -0
  774. package/node_modules/@pm2/io/node_modules/eventemitter2/index.js +1 -0
  775. package/node_modules/@pm2/io/node_modules/eventemitter2/lib/eventemitter2.js +1629 -0
  776. package/node_modules/@pm2/io/node_modules/eventemitter2/package.json +89 -0
  777. package/node_modules/@pm2/io/node_modules/semver/CHANGELOG.md +70 -0
  778. package/node_modules/@pm2/io/node_modules/semver/LICENSE +15 -0
  779. package/node_modules/@pm2/io/node_modules/semver/README.md +443 -0
  780. package/node_modules/@pm2/io/node_modules/semver/bin/semver.js +174 -0
  781. package/node_modules/@pm2/io/node_modules/semver/package.json +28 -0
  782. package/node_modules/@pm2/io/node_modules/semver/range.bnf +16 -0
  783. package/node_modules/@pm2/io/node_modules/semver/semver.js +1596 -0
  784. package/node_modules/@pm2/io/package.json +97 -0
  785. package/node_modules/@pm2/io/pres/io-black.png +0 -0
  786. package/node_modules/@pm2/io/pres/io-white.png +0 -0
  787. package/node_modules/@pm2/io/test.sh +67 -0
  788. package/node_modules/@pm2/js-api/.drone.jsonnet +100 -0
  789. package/node_modules/@pm2/js-api/LICENSE +201 -0
  790. package/node_modules/@pm2/js-api/README.md +375 -0
  791. package/node_modules/@pm2/js-api/constants.js +21 -0
  792. package/node_modules/@pm2/js-api/index.js +1 -0
  793. package/node_modules/@pm2/js-api/node_modules/async/CHANGELOG.md +278 -0
  794. package/node_modules/@pm2/js-api/node_modules/async/LICENSE +19 -0
  795. package/node_modules/@pm2/js-api/node_modules/async/README.md +56 -0
  796. package/node_modules/@pm2/js-api/node_modules/async/all.js +50 -0
  797. package/node_modules/@pm2/js-api/node_modules/async/allLimit.js +42 -0
  798. package/node_modules/@pm2/js-api/node_modules/async/allSeries.js +37 -0
  799. package/node_modules/@pm2/js-api/node_modules/async/any.js +52 -0
  800. package/node_modules/@pm2/js-api/node_modules/async/anyLimit.js +43 -0
  801. package/node_modules/@pm2/js-api/node_modules/async/anySeries.js +38 -0
  802. package/node_modules/@pm2/js-api/node_modules/async/apply.js +68 -0
  803. package/node_modules/@pm2/js-api/node_modules/async/applyEach.js +51 -0
  804. package/node_modules/@pm2/js-api/node_modules/async/applyEachSeries.js +37 -0
  805. package/node_modules/@pm2/js-api/node_modules/async/asyncify.js +110 -0
  806. package/node_modules/@pm2/js-api/node_modules/async/auto.js +289 -0
  807. package/node_modules/@pm2/js-api/node_modules/async/autoInject.js +170 -0
  808. package/node_modules/@pm2/js-api/node_modules/async/bower.json +17 -0
  809. package/node_modules/@pm2/js-api/node_modules/async/cargo.js +94 -0
  810. package/node_modules/@pm2/js-api/node_modules/async/compose.js +58 -0
  811. package/node_modules/@pm2/js-api/node_modules/async/concat.js +43 -0
  812. package/node_modules/@pm2/js-api/node_modules/async/concatLimit.js +65 -0
  813. package/node_modules/@pm2/js-api/node_modules/async/concatSeries.js +36 -0
  814. package/node_modules/@pm2/js-api/node_modules/async/constant.js +66 -0
  815. package/node_modules/@pm2/js-api/node_modules/async/detect.js +61 -0
  816. package/node_modules/@pm2/js-api/node_modules/async/detectLimit.js +48 -0
  817. package/node_modules/@pm2/js-api/node_modules/async/detectSeries.js +38 -0
  818. package/node_modules/@pm2/js-api/node_modules/async/dir.js +43 -0
  819. package/node_modules/@pm2/js-api/node_modules/async/doDuring.js +66 -0
  820. package/node_modules/@pm2/js-api/node_modules/async/doUntil.js +39 -0
  821. package/node_modules/@pm2/js-api/node_modules/async/doWhilst.js +59 -0
  822. package/node_modules/@pm2/js-api/node_modules/async/during.js +76 -0
  823. package/node_modules/@pm2/js-api/node_modules/async/each.js +82 -0
  824. package/node_modules/@pm2/js-api/node_modules/async/eachLimit.js +45 -0
  825. package/node_modules/@pm2/js-api/node_modules/async/eachOf.js +111 -0
  826. package/node_modules/@pm2/js-api/node_modules/async/eachOfLimit.js +41 -0
  827. package/node_modules/@pm2/js-api/node_modules/async/eachOfSeries.js +35 -0
  828. package/node_modules/@pm2/js-api/node_modules/async/eachSeries.js +37 -0
  829. package/node_modules/@pm2/js-api/node_modules/async/ensureAsync.js +73 -0
  830. package/node_modules/@pm2/js-api/node_modules/async/every.js +50 -0
  831. package/node_modules/@pm2/js-api/node_modules/async/everyLimit.js +42 -0
  832. package/node_modules/@pm2/js-api/node_modules/async/everySeries.js +37 -0
  833. package/node_modules/@pm2/js-api/node_modules/async/filter.js +45 -0
  834. package/node_modules/@pm2/js-api/node_modules/async/filterLimit.js +37 -0
  835. package/node_modules/@pm2/js-api/node_modules/async/filterSeries.js +35 -0
  836. package/node_modules/@pm2/js-api/node_modules/async/find.js +61 -0
  837. package/node_modules/@pm2/js-api/node_modules/async/findLimit.js +48 -0
  838. package/node_modules/@pm2/js-api/node_modules/async/findSeries.js +38 -0
  839. package/node_modules/@pm2/js-api/node_modules/async/foldl.js +78 -0
  840. package/node_modules/@pm2/js-api/node_modules/async/foldr.js +44 -0
  841. package/node_modules/@pm2/js-api/node_modules/async/forEach.js +82 -0
  842. package/node_modules/@pm2/js-api/node_modules/async/forEachLimit.js +45 -0
  843. package/node_modules/@pm2/js-api/node_modules/async/forEachOf.js +111 -0
  844. package/node_modules/@pm2/js-api/node_modules/async/forEachOfLimit.js +41 -0
  845. package/node_modules/@pm2/js-api/node_modules/async/forEachOfSeries.js +35 -0
  846. package/node_modules/@pm2/js-api/node_modules/async/forEachSeries.js +37 -0
  847. package/node_modules/@pm2/js-api/node_modules/async/forever.js +65 -0
  848. package/node_modules/@pm2/js-api/node_modules/async/groupBy.js +54 -0
  849. package/node_modules/@pm2/js-api/node_modules/async/groupByLimit.js +71 -0
  850. package/node_modules/@pm2/js-api/node_modules/async/groupBySeries.js +37 -0
  851. package/node_modules/@pm2/js-api/node_modules/async/index.js +582 -0
  852. package/node_modules/@pm2/js-api/node_modules/async/inject.js +78 -0
  853. package/node_modules/@pm2/js-api/node_modules/async/internal/DoublyLinkedList.js +88 -0
  854. package/node_modules/@pm2/js-api/node_modules/async/internal/applyEach.js +38 -0
  855. package/node_modules/@pm2/js-api/node_modules/async/internal/breakLoop.js +9 -0
  856. package/node_modules/@pm2/js-api/node_modules/async/internal/consoleFunc.js +42 -0
  857. package/node_modules/@pm2/js-api/node_modules/async/internal/createTester.js +44 -0
  858. package/node_modules/@pm2/js-api/node_modules/async/internal/doLimit.js +12 -0
  859. package/node_modules/@pm2/js-api/node_modules/async/internal/doParallel.js +23 -0
  860. package/node_modules/@pm2/js-api/node_modules/async/internal/doParallelLimit.js +23 -0
  861. package/node_modules/@pm2/js-api/node_modules/async/internal/eachOfLimit.js +74 -0
  862. package/node_modules/@pm2/js-api/node_modules/async/internal/filter.js +75 -0
  863. package/node_modules/@pm2/js-api/node_modules/async/internal/findGetResult.js +10 -0
  864. package/node_modules/@pm2/js-api/node_modules/async/internal/getIterator.js +13 -0
  865. package/node_modules/@pm2/js-api/node_modules/async/internal/initialParams.js +21 -0
  866. package/node_modules/@pm2/js-api/node_modules/async/internal/iterator.js +61 -0
  867. package/node_modules/@pm2/js-api/node_modules/async/internal/map.js +35 -0
  868. package/node_modules/@pm2/js-api/node_modules/async/internal/notId.js +10 -0
  869. package/node_modules/@pm2/js-api/node_modules/async/internal/once.js +15 -0
  870. package/node_modules/@pm2/js-api/node_modules/async/internal/onlyOnce.js +15 -0
  871. package/node_modules/@pm2/js-api/node_modules/async/internal/parallel.js +42 -0
  872. package/node_modules/@pm2/js-api/node_modules/async/internal/queue.js +204 -0
  873. package/node_modules/@pm2/js-api/node_modules/async/internal/reject.js +21 -0
  874. package/node_modules/@pm2/js-api/node_modules/async/internal/setImmediate.js +42 -0
  875. package/node_modules/@pm2/js-api/node_modules/async/internal/slice.js +16 -0
  876. package/node_modules/@pm2/js-api/node_modules/async/internal/withoutIndex.js +12 -0
  877. package/node_modules/@pm2/js-api/node_modules/async/internal/wrapAsync.js +25 -0
  878. package/node_modules/@pm2/js-api/node_modules/async/log.js +41 -0
  879. package/node_modules/@pm2/js-api/node_modules/async/map.js +54 -0
  880. package/node_modules/@pm2/js-api/node_modules/async/mapLimit.js +37 -0
  881. package/node_modules/@pm2/js-api/node_modules/async/mapSeries.js +36 -0
  882. package/node_modules/@pm2/js-api/node_modules/async/mapValues.js +63 -0
  883. package/node_modules/@pm2/js-api/node_modules/async/mapValuesLimit.js +61 -0
  884. package/node_modules/@pm2/js-api/node_modules/async/mapValuesSeries.js +37 -0
  885. package/node_modules/@pm2/js-api/node_modules/async/memoize.js +101 -0
  886. package/node_modules/@pm2/js-api/node_modules/async/nextTick.js +51 -0
  887. package/node_modules/@pm2/js-api/node_modules/async/package.json +80 -0
  888. package/node_modules/@pm2/js-api/node_modules/async/parallel.js +90 -0
  889. package/node_modules/@pm2/js-api/node_modules/async/parallelLimit.js +40 -0
  890. package/node_modules/@pm2/js-api/node_modules/async/priorityQueue.js +98 -0
  891. package/node_modules/@pm2/js-api/node_modules/async/queue.js +130 -0
  892. package/node_modules/@pm2/js-api/node_modules/async/race.js +70 -0
  893. package/node_modules/@pm2/js-api/node_modules/async/reduce.js +78 -0
  894. package/node_modules/@pm2/js-api/node_modules/async/reduceRight.js +44 -0
  895. package/node_modules/@pm2/js-api/node_modules/async/reflect.js +81 -0
  896. package/node_modules/@pm2/js-api/node_modules/async/reflectAll.js +105 -0
  897. package/node_modules/@pm2/js-api/node_modules/async/reject.js +45 -0
  898. package/node_modules/@pm2/js-api/node_modules/async/rejectLimit.js +37 -0
  899. package/node_modules/@pm2/js-api/node_modules/async/rejectSeries.js +35 -0
  900. package/node_modules/@pm2/js-api/node_modules/async/retry.js +156 -0
  901. package/node_modules/@pm2/js-api/node_modules/async/retryable.js +65 -0
  902. package/node_modules/@pm2/js-api/node_modules/async/select.js +45 -0
  903. package/node_modules/@pm2/js-api/node_modules/async/selectLimit.js +37 -0
  904. package/node_modules/@pm2/js-api/node_modules/async/selectSeries.js +35 -0
  905. package/node_modules/@pm2/js-api/node_modules/async/seq.js +91 -0
  906. package/node_modules/@pm2/js-api/node_modules/async/series.js +85 -0
  907. package/node_modules/@pm2/js-api/node_modules/async/setImmediate.js +45 -0
  908. package/node_modules/@pm2/js-api/node_modules/async/some.js +52 -0
  909. package/node_modules/@pm2/js-api/node_modules/async/someLimit.js +43 -0
  910. package/node_modules/@pm2/js-api/node_modules/async/someSeries.js +38 -0
  911. package/node_modules/@pm2/js-api/node_modules/async/sortBy.js +91 -0
  912. package/node_modules/@pm2/js-api/node_modules/async/timeout.js +89 -0
  913. package/node_modules/@pm2/js-api/node_modules/async/times.js +50 -0
  914. package/node_modules/@pm2/js-api/node_modules/async/timesLimit.js +42 -0
  915. package/node_modules/@pm2/js-api/node_modules/async/timesSeries.js +32 -0
  916. package/node_modules/@pm2/js-api/node_modules/async/transform.js +87 -0
  917. package/node_modules/@pm2/js-api/node_modules/async/tryEach.js +81 -0
  918. package/node_modules/@pm2/js-api/node_modules/async/unmemoize.js +25 -0
  919. package/node_modules/@pm2/js-api/node_modules/async/until.js +41 -0
  920. package/node_modules/@pm2/js-api/node_modules/async/waterfall.js +113 -0
  921. package/node_modules/@pm2/js-api/node_modules/async/whilst.js +72 -0
  922. package/node_modules/@pm2/js-api/node_modules/async/wrapSync.js +110 -0
  923. package/node_modules/@pm2/js-api/node_modules/eventemitter2/CHANGELOG.md +122 -0
  924. package/node_modules/@pm2/js-api/node_modules/eventemitter2/LICENSE.txt +21 -0
  925. package/node_modules/@pm2/js-api/node_modules/eventemitter2/README.md +809 -0
  926. package/node_modules/@pm2/js-api/node_modules/eventemitter2/eventemitter2.d.ts +150 -0
  927. package/node_modules/@pm2/js-api/node_modules/eventemitter2/index.js +1 -0
  928. package/node_modules/@pm2/js-api/node_modules/eventemitter2/lib/eventemitter2.js +1629 -0
  929. package/node_modules/@pm2/js-api/node_modules/eventemitter2/package.json +89 -0
  930. package/node_modules/@pm2/js-api/package.json +77 -0
  931. package/node_modules/@pm2/js-api/src/api_mappings.json +1 -0
  932. package/node_modules/@pm2/js-api/src/auth_strategies/browser_strategy.js +67 -0
  933. package/node_modules/@pm2/js-api/src/auth_strategies/embed_strategy.js +138 -0
  934. package/node_modules/@pm2/js-api/src/auth_strategies/standalone_strategy.js +33 -0
  935. package/node_modules/@pm2/js-api/src/auth_strategies/strategy.js +57 -0
  936. package/node_modules/@pm2/js-api/src/endpoint.js +34 -0
  937. package/node_modules/@pm2/js-api/src/keymetrics.js +78 -0
  938. package/node_modules/@pm2/js-api/src/namespace.js +76 -0
  939. package/node_modules/@pm2/js-api/src/network.js +464 -0
  940. package/node_modules/@pm2/js-api/src/utils/validator.js +164 -0
  941. package/node_modules/@pm2/js-api/src/utils/websocket.js +181 -0
  942. package/node_modules/@pm2/pm2-version-check/README.md +8 -0
  943. package/node_modules/@pm2/pm2-version-check/index.js +54 -0
  944. package/node_modules/@pm2/pm2-version-check/package.json +11 -0
  945. package/node_modules/@tootallnate/once/package.json +45 -0
  946. package/node_modules/@types/json5/README.md +18 -0
  947. package/node_modules/@types/json5/index.d.ts +44 -0
  948. package/node_modules/@types/json5/package.json +16 -0
  949. package/node_modules/@types/json5/types-metadata.json +25 -0
  950. package/package.json +11 -10
  951. package/server-config.json +3 -0
  952. package/server.js +249 -181
@@ -0,0 +1,325 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const core_1 = require("@opencensus/core");
4
+ const httpModule = require("http");
5
+ const semver = require("semver");
6
+ const shimmer = require("shimmer");
7
+ const url = require("url");
8
+ const uuid = require("uuid");
9
+ const express_1 = require("./express");
10
+ class HttpPlugin extends core_1.BasePlugin {
11
+ constructor(moduleName) {
12
+ super(moduleName);
13
+ }
14
+ applyPatch() {
15
+ this.logger.debug('applying patch to %s@%s', this.moduleName, this.version);
16
+ shimmer.wrap(this.moduleExports, 'request', this.getPatchOutgoingRequestFunction());
17
+ if (semver.satisfies(this.version, '>=8.0.0')) {
18
+ shimmer.wrap(this.moduleExports, 'get', () => {
19
+ return function getTrace(options, callback) {
20
+ const req = httpModule.request(options, callback);
21
+ req.end();
22
+ return req;
23
+ };
24
+ });
25
+ }
26
+ if (this.moduleExports && this.moduleExports.Server &&
27
+ this.moduleExports.Server.prototype) {
28
+ shimmer.wrap(this.moduleExports.Server.prototype, 'emit', this.getPatchIncomingRequestFunction());
29
+ }
30
+ else {
31
+ this.logger.error('Could not apply patch to %s.emit. Interface is not as expected.', this.moduleName);
32
+ }
33
+ return this.moduleExports;
34
+ }
35
+ applyUnpatch() {
36
+ shimmer.unwrap(this.moduleExports, 'request');
37
+ if (semver.satisfies(this.version, '>=8.0.0')) {
38
+ shimmer.unwrap(this.moduleExports, 'get');
39
+ }
40
+ if (this.moduleExports && this.moduleExports.Server &&
41
+ this.moduleExports.Server.prototype) {
42
+ shimmer.unwrap(this.moduleExports.Server.prototype, 'emit');
43
+ }
44
+ }
45
+ isIgnored(url, request, list) {
46
+ if (!list) {
47
+ return false;
48
+ }
49
+ for (const pattern of list) {
50
+ if (this.isSatisfyPattern(url, request, pattern)) {
51
+ return true;
52
+ }
53
+ }
54
+ return false;
55
+ }
56
+ isSatisfyPattern(url, request, pattern) {
57
+ if (typeof pattern === 'string') {
58
+ return pattern === url;
59
+ }
60
+ else if (pattern instanceof RegExp) {
61
+ return pattern.test(url);
62
+ }
63
+ else if (typeof pattern === 'function') {
64
+ return pattern(url, request);
65
+ }
66
+ else {
67
+ throw new TypeError('Pattern is in unsupported datatype');
68
+ }
69
+ }
70
+ getPatchIncomingRequestFunction() {
71
+ return (original) => {
72
+ const plugin = this;
73
+ return function incomingRequest(event, ...args) {
74
+ if (event !== 'request') {
75
+ return original.apply(this, arguments);
76
+ }
77
+ const request = args[0];
78
+ const response = args[1];
79
+ const path = url.parse(request.url).pathname;
80
+ plugin.logger.debug('%s plugin incomingRequest', plugin.moduleName);
81
+ if (plugin.isIgnored(path, request, plugin.options.ignoreIncomingPaths)) {
82
+ return original.apply(this, arguments);
83
+ }
84
+ const propagation = plugin.tracer.propagation;
85
+ const headers = request.headers;
86
+ const getter = {
87
+ getHeader(name) {
88
+ return headers[name];
89
+ }
90
+ };
91
+ const context = propagation ? propagation.extract(getter) : null;
92
+ const traceOptions = {
93
+ name: path,
94
+ kind: core_1.SpanKind.SERVER,
95
+ spanContext: context !== null ? context : undefined
96
+ };
97
+ return plugin.createSpan(traceOptions, rootSpan => {
98
+ if (!rootSpan)
99
+ return original.apply(this, arguments);
100
+ plugin.tracer.wrapEmitter(request);
101
+ plugin.tracer.wrapEmitter(response);
102
+ const originalEnd = response.end;
103
+ response.end = function () {
104
+ response.end = originalEnd;
105
+ const returned = response.end.apply(this, arguments);
106
+ const requestUrl = url.parse(request.url || 'localhost');
107
+ const host = headers.host || 'localhost';
108
+ const userAgent = (headers['user-agent'] || headers['User-Agent']);
109
+ rootSpan.addAttribute(HttpPlugin.ATTRIBUTE_HTTP_HOST, host.replace(/^(.*)(\:[0-9]{1,5})/, '$1'));
110
+ rootSpan.addAttribute(HttpPlugin.ATTRIBUTE_HTTP_METHOD, request.method || 'GET');
111
+ rootSpan.addAttribute(HttpPlugin.ATTRIBUTE_HTTP_PATH, `${requestUrl.pathname}`);
112
+ let route = `${requestUrl.path}`;
113
+ const middlewareStack = request[express_1.kMiddlewareStack];
114
+ if (middlewareStack) {
115
+ route = middlewareStack
116
+ .filter(path => path !== '/')
117
+ .map(path => {
118
+ return path[0] === '/' ? path : '/' + path;
119
+ }).join('');
120
+ }
121
+ rootSpan.addAttribute(HttpPlugin.ATTRIBUTE_HTTP_ROUTE, route);
122
+ rootSpan.addAttribute(HttpPlugin.ATTRIBUTE_HTTP_USER_AGENT, userAgent);
123
+ rootSpan.addAttribute(HttpPlugin.ATTRIBUTE_HTTP_STATUS_CODE, response.statusCode.toString());
124
+ rootSpan.setStatus(HttpPlugin.convertTraceStatus(response.statusCode));
125
+ rootSpan.addMessageEvent(core_1.MessageEventType.RECEIVED, uuid.v4().split('-').join(''));
126
+ rootSpan.end();
127
+ return returned;
128
+ };
129
+ return original.apply(this, arguments);
130
+ });
131
+ };
132
+ };
133
+ }
134
+ getPatchOutgoingRequestFunction() {
135
+ return (original) => {
136
+ const plugin = this;
137
+ const kind = plugin.moduleName === 'https' ? 'HTTPS' : 'HTTP';
138
+ return function outgoingRequest(options, callback) {
139
+ if (!options) {
140
+ return original.apply(this, arguments);
141
+ }
142
+ let pathname = '';
143
+ let method = 'GET';
144
+ let origin = '';
145
+ if (typeof (options) === 'string') {
146
+ const parsedUrl = url.parse(options);
147
+ options = parsedUrl;
148
+ pathname = parsedUrl.pathname || '/';
149
+ origin = `${parsedUrl.protocol || 'http:'}//${parsedUrl.host}`;
150
+ }
151
+ else {
152
+ if (options.headers &&
153
+ options.headers['x-opencensus-outgoing-request']) {
154
+ plugin.logger.debug('header with "x-opencensus-outgoing-request" - do not trace');
155
+ return original.apply(this, arguments);
156
+ }
157
+ try {
158
+ pathname = options.pathname || '';
159
+ if (pathname.length === 0 && typeof options.path === 'string') {
160
+ pathname = url.parse(options.path).pathname || '';
161
+ }
162
+ method = options.method || 'GET';
163
+ origin = `${options.protocol || 'http:'}//${options.host}`;
164
+ }
165
+ catch (e) {
166
+ return original.apply(this, arguments);
167
+ }
168
+ }
169
+ const request = original.apply(this, arguments);
170
+ if (plugin.isIgnored(origin + pathname, request, plugin.options.ignoreOutgoingUrls)) {
171
+ return request;
172
+ }
173
+ plugin.tracer.wrapEmitter(request);
174
+ plugin.logger.debug('%s plugin outgoingRequest', plugin.moduleName);
175
+ const traceOptions = {
176
+ name: `${kind.toLowerCase()}-${(method || 'GET').toLowerCase()}`,
177
+ kind: core_1.SpanKind.CLIENT
178
+ };
179
+ if (!plugin.tracer.currentRootSpan) {
180
+ plugin.logger.debug('outgoingRequest starting a root span');
181
+ return plugin.tracer.startRootSpan(traceOptions, plugin.getMakeRequestTraceFunction(request, options, plugin));
182
+ }
183
+ else {
184
+ plugin.logger.debug('outgoingRequest starting a child span');
185
+ const span = plugin.tracer.startChildSpan(traceOptions.name, traceOptions.kind);
186
+ return (plugin.getMakeRequestTraceFunction(request, options, plugin))(span);
187
+ }
188
+ };
189
+ };
190
+ }
191
+ getMakeRequestTraceFunction(request, options, plugin) {
192
+ return (span) => {
193
+ plugin.logger.debug('makeRequestTrace');
194
+ if (!span) {
195
+ plugin.logger.debug('makeRequestTrace span is null');
196
+ return request;
197
+ }
198
+ const setter = {
199
+ setHeader(name, value) {
200
+ if (plugin.hasExpectHeader(options) && options.headers) {
201
+ if (options.__cloned !== true) {
202
+ options = Object.assign({}, options);
203
+ options.headers = Object.assign({}, options.headers);
204
+ options.__cloned = true;
205
+ }
206
+ options.headers[name] = value;
207
+ }
208
+ else {
209
+ request.setHeader(name, value);
210
+ }
211
+ }
212
+ };
213
+ const propagation = plugin.tracer.propagation;
214
+ if (propagation) {
215
+ propagation.inject(setter, span.spanContext);
216
+ }
217
+ request.on('response', (response) => {
218
+ plugin.tracer.wrapEmitter(response);
219
+ plugin.logger.debug('outgoingRequest on response()');
220
+ response.on('end', () => {
221
+ plugin.logger.debug('outgoingRequest on end()');
222
+ const method = response.method ? response.method : 'GET';
223
+ const headers = options.headers;
224
+ const userAgent = headers ? (headers['user-agent'] || headers['User-Agent']) : null;
225
+ if (options.host || options.hostname) {
226
+ const value = options.host || options.hostname;
227
+ span.addAttribute(HttpPlugin.ATTRIBUTE_HTTP_HOST, `${value}`);
228
+ }
229
+ span.addAttribute(HttpPlugin.ATTRIBUTE_HTTP_METHOD, method);
230
+ span.addAttribute(HttpPlugin.ATTRIBUTE_HTTP_PATH, `${options.path}`);
231
+ span.addAttribute(HttpPlugin.ATTRIBUTE_HTTP_ROUTE, `${options.path}`);
232
+ if (userAgent) {
233
+ span.addAttribute(HttpPlugin.ATTRIBUTE_HTTP_USER_AGENT, userAgent.toString());
234
+ }
235
+ span.addAttribute(HttpPlugin.ATTRIBUTE_HTTP_STATUS_CODE, `${response.statusCode}`);
236
+ span.setStatus(HttpPlugin.convertTraceStatus(response.statusCode || 0));
237
+ span.addMessageEvent(core_1.MessageEventType.SENT, uuid.v4().split('-').join(''));
238
+ span.end();
239
+ });
240
+ response.on('error', error => {
241
+ span.addAttribute(HttpPlugin.ATTRIBUTE_HTTP_ERROR_NAME, error.name);
242
+ span.addAttribute(HttpPlugin.ATTRIBUTE_HTTP_ERROR_MESSAGE, error.message);
243
+ span.setStatus(core_1.CanonicalCode.UNKNOWN);
244
+ span.end();
245
+ });
246
+ });
247
+ request.on('error', error => {
248
+ span.addAttribute(HttpPlugin.ATTRIBUTE_HTTP_ERROR_NAME, error.name);
249
+ span.addAttribute(HttpPlugin.ATTRIBUTE_HTTP_ERROR_MESSAGE, error.message);
250
+ span.setStatus(core_1.CanonicalCode.UNKNOWN);
251
+ span.end();
252
+ });
253
+ plugin.logger.debug('makeRequestTrace return request');
254
+ return request;
255
+ };
256
+ }
257
+ createSpan(options, fn) {
258
+ const forceChildspan = this.options.createSpanWithNet === true;
259
+ if (forceChildspan) {
260
+ const span = this.tracer.startChildSpan(options.name, options.kind);
261
+ return fn(span);
262
+ }
263
+ else {
264
+ return this.tracer.startRootSpan(options, fn);
265
+ }
266
+ }
267
+ static convertTraceStatus(statusCode) {
268
+ if (statusCode < 200 || statusCode > 504) {
269
+ return TraceStatusCodes.UNKNOWN;
270
+ }
271
+ else if (statusCode >= 200 && statusCode < 400) {
272
+ return TraceStatusCodes.OK;
273
+ }
274
+ else {
275
+ switch (statusCode) {
276
+ case (400):
277
+ return TraceStatusCodes.INVALID_ARGUMENT;
278
+ case (504):
279
+ return TraceStatusCodes.DEADLINE_EXCEEDED;
280
+ case (404):
281
+ return TraceStatusCodes.NOT_FOUND;
282
+ case (403):
283
+ return TraceStatusCodes.PERMISSION_DENIED;
284
+ case (401):
285
+ return TraceStatusCodes.UNAUTHENTICATED;
286
+ case (429):
287
+ return TraceStatusCodes.RESOURCE_EXHAUSTED;
288
+ case (501):
289
+ return TraceStatusCodes.UNIMPLEMENTED;
290
+ case (503):
291
+ return TraceStatusCodes.UNAVAILABLE;
292
+ default:
293
+ return TraceStatusCodes.UNKNOWN;
294
+ }
295
+ }
296
+ }
297
+ hasExpectHeader(options) {
298
+ return !!(options.headers &&
299
+ options.headers.Expect);
300
+ }
301
+ }
302
+ HttpPlugin.ATTRIBUTE_HTTP_HOST = 'http.host';
303
+ HttpPlugin.ATTRIBUTE_HTTP_METHOD = 'http.method';
304
+ HttpPlugin.ATTRIBUTE_HTTP_PATH = 'http.path';
305
+ HttpPlugin.ATTRIBUTE_HTTP_ROUTE = 'http.route';
306
+ HttpPlugin.ATTRIBUTE_HTTP_USER_AGENT = 'http.user_agent';
307
+ HttpPlugin.ATTRIBUTE_HTTP_STATUS_CODE = 'http.status_code';
308
+ HttpPlugin.ATTRIBUTE_HTTP_ERROR_NAME = 'http.error_name';
309
+ HttpPlugin.ATTRIBUTE_HTTP_ERROR_MESSAGE = 'http.error_message';
310
+ exports.HttpPlugin = HttpPlugin;
311
+ var TraceStatusCodes;
312
+ (function (TraceStatusCodes) {
313
+ TraceStatusCodes[TraceStatusCodes["UNKNOWN"] = 2] = "UNKNOWN";
314
+ TraceStatusCodes[TraceStatusCodes["OK"] = 0] = "OK";
315
+ TraceStatusCodes[TraceStatusCodes["INVALID_ARGUMENT"] = 3] = "INVALID_ARGUMENT";
316
+ TraceStatusCodes[TraceStatusCodes["DEADLINE_EXCEEDED"] = 4] = "DEADLINE_EXCEEDED";
317
+ TraceStatusCodes[TraceStatusCodes["NOT_FOUND"] = 5] = "NOT_FOUND";
318
+ TraceStatusCodes[TraceStatusCodes["PERMISSION_DENIED"] = 7] = "PERMISSION_DENIED";
319
+ TraceStatusCodes[TraceStatusCodes["UNAUTHENTICATED"] = 16] = "UNAUTHENTICATED";
320
+ TraceStatusCodes[TraceStatusCodes["RESOURCE_EXHAUSTED"] = 8] = "RESOURCE_EXHAUSTED";
321
+ TraceStatusCodes[TraceStatusCodes["UNIMPLEMENTED"] = 12] = "UNIMPLEMENTED";
322
+ TraceStatusCodes[TraceStatusCodes["UNAVAILABLE"] = 14] = "UNAVAILABLE";
323
+ })(TraceStatusCodes = exports.TraceStatusCodes || (exports.TraceStatusCodes = {}));
324
+ exports.plugin = new HttpPlugin('http');
325
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jZW5zdXMvcGx1Z2lucy9odHRwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBZ0JBLDJDQUE4STtBQUM5SSxtQ0FBa0M7QUFDbEMsaUNBQWdDO0FBQ2hDLG1DQUFrQztBQUNsQywyQkFBMEI7QUFDMUIsNkJBQTRCO0FBQzVCLHVDQUE0QztBQXdCNUMsTUFBYSxVQUFXLFNBQVEsaUJBQVU7SUFrQnhDLFlBQWEsVUFBa0I7UUFDN0IsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFBO0lBQ25CLENBQUM7SUFLUyxVQUFVO1FBQ2xCLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLHlCQUF5QixFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFBO1FBRTNFLE9BQU8sQ0FBQyxJQUFJLENBQ1IsSUFBSSxDQUFDLGFBQWEsRUFBRSxTQUFTLEVBQUUsSUFBSSxDQUFDLCtCQUErQixFQUFFLENBQUMsQ0FBQTtRQUkxRSxJQUFJLE1BQU0sQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxTQUFTLENBQUMsRUFBRTtZQUM3QyxPQUFPLENBQUMsSUFBSSxDQUNSLElBQUksQ0FBQyxhQUFhLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRTtnQkFZOUIsT0FBTyxTQUFTLFFBQVEsQ0FBRSxPQUFPLEVBQUUsUUFBUTtvQkFDekMsTUFBTSxHQUFHLEdBQUcsVUFBVSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDLENBQUE7b0JBQ2pELEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQTtvQkFDVCxPQUFPLEdBQUcsQ0FBQTtnQkFDWixDQUFDLENBQUE7WUFDSCxDQUFDLENBQUMsQ0FBQTtTQUNQO1FBRUQsSUFBSSxJQUFJLENBQUMsYUFBYSxJQUFJLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTTtZQUMvQyxJQUFJLENBQUMs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
@@ -0,0 +1,17 @@
1
+ import { HttpPlugin } from './http';
2
+ import * as http2 from 'http2';
3
+ export declare type Http2Module = typeof http2;
4
+ export declare type ConnectFunction = typeof http2.connect;
5
+ export declare type CreateServerFunction = typeof http2.createServer;
6
+ export declare class Http2Plugin extends HttpPlugin {
7
+ constructor();
8
+ protected applyPatch(): any;
9
+ protected applyUnpatch(): void;
10
+ private getPatchConnectFunction;
11
+ private getPatchRequestFunction;
12
+ private getMakeHttp2RequestTraceFunction;
13
+ private getPatchCreateServerFunction;
14
+ private getPatchEmitFunction;
15
+ }
16
+ declare const plugin: Http2Plugin;
17
+ export { plugin };
@@ -0,0 +1,163 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const core_1 = require("@opencensus/core");
4
+ const http_1 = require("./http");
5
+ const shimmer = require("shimmer");
6
+ const url = require("url");
7
+ const uuid = require("uuid");
8
+ class Http2Plugin extends http_1.HttpPlugin {
9
+ constructor() {
10
+ super('http2');
11
+ }
12
+ applyPatch() {
13
+ shimmer.wrap(this.moduleExports, 'createServer', this.getPatchCreateServerFunction());
14
+ shimmer.wrap(this.moduleExports, 'createSecureServer', this.getPatchCreateServerFunction());
15
+ shimmer.wrap(this.moduleExports, 'connect', this.getPatchConnectFunction());
16
+ return this.moduleExports;
17
+ }
18
+ applyUnpatch() {
19
+ shimmer.unwrap(this.moduleExports, 'createServer');
20
+ shimmer.unwrap(this.moduleExports, 'createSecureServer');
21
+ shimmer.unwrap(this.moduleExports, 'connect');
22
+ }
23
+ getPatchConnectFunction() {
24
+ const plugin = this;
25
+ return (original) => {
26
+ return function patchedConnect(authority) {
27
+ const client = original.apply(this, arguments);
28
+ shimmer.wrap(client, 'request', (original) => (plugin.getPatchRequestFunction())(original, authority));
29
+ shimmer.unwrap(plugin.moduleExports, 'connect');
30
+ return client;
31
+ };
32
+ };
33
+ }
34
+ getPatchRequestFunction() {
35
+ const plugin = this;
36
+ return (original, authority) => {
37
+ return function patchedRequest(headers) {
38
+ if (headers['x-opencensus-outgoing-request']) {
39
+ return original.apply(this, arguments);
40
+ }
41
+ const request = original.apply(this, arguments);
42
+ plugin.tracer.wrapEmitter(request);
43
+ const traceOptions = {
44
+ name: `http2-${(headers[':method'] || 'GET').toLowerCase()}`,
45
+ kind: core_1.SpanKind.CLIENT
46
+ };
47
+ if (!plugin.tracer.currentRootSpan) {
48
+ return plugin.tracer.startRootSpan(traceOptions, plugin.getMakeHttp2RequestTraceFunction(request, headers, authority, plugin));
49
+ }
50
+ else {
51
+ const span = plugin.tracer.startChildSpan(traceOptions.name, traceOptions.kind);
52
+ return (plugin.getMakeHttp2RequestTraceFunction(request, headers, authority, plugin))(span);
53
+ }
54
+ };
55
+ };
56
+ }
57
+ getMakeHttp2RequestTraceFunction(request, headers, authority, plugin) {
58
+ return (span) => {
59
+ if (!span)
60
+ return request;
61
+ const setter = {
62
+ setHeader(name, value) {
63
+ headers[name] = value;
64
+ }
65
+ };
66
+ const propagation = plugin.tracer.propagation;
67
+ if (propagation) {
68
+ propagation.inject(setter, span.spanContext);
69
+ }
70
+ request.on('response', (responseHeaders) => {
71
+ const status = `${responseHeaders[':status']}`;
72
+ span.addAttribute(Http2Plugin.ATTRIBUTE_HTTP_STATUS_CODE, status);
73
+ span.setStatus(Http2Plugin.convertTraceStatus(parseInt(status, 10)));
74
+ });
75
+ request.on('end', () => {
76
+ const userAgent = headers['user-agent'] || headers['User-Agent'] || null;
77
+ span.addAttribute(Http2Plugin.ATTRIBUTE_HTTP_HOST, `${url.parse(authority).host}`);
78
+ span.addAttribute(Http2Plugin.ATTRIBUTE_HTTP_METHOD, `${headers[':method']}`);
79
+ span.addAttribute(Http2Plugin.ATTRIBUTE_HTTP_PATH, `${headers[':path']}`);
80
+ span.addAttribute(Http2Plugin.ATTRIBUTE_HTTP_ROUTE, `${headers[':path']}`);
81
+ if (userAgent) {
82
+ span.addAttribute(Http2Plugin.ATTRIBUTE_HTTP_USER_AGENT, `${userAgent}`);
83
+ }
84
+ span.addMessageEvent(core_1.MessageEventType.SENT, uuid.v4().split('-').join(''));
85
+ span.end();
86
+ });
87
+ request.on('error', (err) => {
88
+ span.addAttribute(http_1.HttpPlugin.ATTRIBUTE_HTTP_ERROR_NAME, err.name);
89
+ span.addAttribute(http_1.HttpPlugin.ATTRIBUTE_HTTP_ERROR_MESSAGE, err.message);
90
+ span.setStatus(core_1.CanonicalCode.UNKNOWN, err.message);
91
+ span.end();
92
+ });
93
+ return request;
94
+ };
95
+ }
96
+ getPatchCreateServerFunction() {
97
+ const plugin = this;
98
+ return (original) => {
99
+ return function patchedCreateServer() {
100
+ const server = original.apply(this, arguments);
101
+ shimmer.wrap(server.constructor.prototype, 'emit', plugin.getPatchEmitFunction());
102
+ shimmer.unwrap(plugin.moduleExports, 'createServer');
103
+ shimmer.unwrap(plugin.moduleExports, 'createSecureServer');
104
+ return server;
105
+ };
106
+ };
107
+ }
108
+ getPatchEmitFunction() {
109
+ const plugin = this;
110
+ return (original) => {
111
+ return function patchedEmit(event, stream, headers) {
112
+ if (event !== 'stream') {
113
+ return original.apply(this, arguments);
114
+ }
115
+ const propagation = plugin.tracer.propagation;
116
+ const getter = {
117
+ getHeader(name) {
118
+ return headers[name];
119
+ }
120
+ };
121
+ const traceOptions = {
122
+ name: headers[':path'],
123
+ kind: core_1.SpanKind.SERVER,
124
+ spanContext: propagation ? propagation.extract(getter) : null
125
+ };
126
+ let statusCode = 0;
127
+ const originalRespond = stream.respond;
128
+ stream.respond = function () {
129
+ stream.respond = originalRespond;
130
+ statusCode = arguments[0][':status'];
131
+ return stream.respond.apply(this, arguments);
132
+ };
133
+ return plugin.tracer.startRootSpan(traceOptions, rootSpan => {
134
+ if (!rootSpan)
135
+ return original.apply(this, arguments);
136
+ plugin.tracer.wrapEmitter(stream);
137
+ const originalEnd = stream.end;
138
+ stream.end = function () {
139
+ stream.end = originalEnd;
140
+ const returned = stream.end.apply(this, arguments);
141
+ const userAgent = (headers['user-agent'] || headers['User-Agent'] ||
142
+ null);
143
+ rootSpan.addAttribute(Http2Plugin.ATTRIBUTE_HTTP_HOST, `${headers[':authority']}`);
144
+ rootSpan.addAttribute(Http2Plugin.ATTRIBUTE_HTTP_METHOD, `${headers[':method']}`);
145
+ rootSpan.addAttribute(Http2Plugin.ATTRIBUTE_HTTP_PATH, `${headers[':path']}`);
146
+ rootSpan.addAttribute(Http2Plugin.ATTRIBUTE_HTTP_ROUTE, `${headers[':path']}`);
147
+ rootSpan.addAttribute(Http2Plugin.ATTRIBUTE_HTTP_USER_AGENT, userAgent);
148
+ rootSpan.addAttribute(Http2Plugin.ATTRIBUTE_HTTP_STATUS_CODE, `${statusCode}`);
149
+ rootSpan.setStatus(Http2Plugin.convertTraceStatus(statusCode));
150
+ rootSpan.addMessageEvent(core_1.MessageEventType.RECEIVED, uuid.v4().split('-').join(''));
151
+ rootSpan.end();
152
+ return returned;
153
+ };
154
+ return original.apply(this, arguments);
155
+ });
156
+ };
157
+ };
158
+ }
159
+ }
160
+ exports.Http2Plugin = Http2Plugin;
161
+ const plugin = new Http2Plugin();
162
+ exports.plugin = plugin;
163
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cDIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY2Vuc3VzL3BsdWdpbnMvaHR0cDIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFnQkEsMkNBQTBJO0FBQzFJLGlDQUFtQztBQUVuQyxtQ0FBa0M7QUFDbEMsMkJBQTBCO0FBQzFCLDZCQUE0QjtBQVU1QixNQUFhLFdBQVksU0FBUSxpQkFBVTtJQUV6QztRQUNFLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQTtJQUNoQixDQUFDO0lBS1MsVUFBVTtRQUNsQixPQUFPLENBQUMsSUFBSSxDQUNSLElBQUksQ0FBQyxhQUFhLEVBQUUsY0FBYyxFQUNsQyxJQUFJLENBQUMsNEJBQTRCLEVBQUUsQ0FBQyxDQUFBO1FBQ3hDLE9BQU8sQ0FBQyxJQUFJLENBQ1IsSUFBSSxDQUFDLGFBQWEsRUFBRSxvQkFBb0IsRUFDeEMsSUFBSSxDQUFDLDRCQUE0QixFQUFFLENBQUMsQ0FBQTtRQUV4QyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsU0FBUyxFQUFFLElBQUksQ0FBQyx1QkFBdUIsRUFBRSxDQUFDLENBQUE7UUFFM0UsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFBO0lBQzNCLENBQUM7SUFHUyxZQUFZO1FBR3BCLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxjQUFjLENBQUMsQ0FBQTtRQUNsRCxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsb0JBQW9CLENBQUMsQ0FBQTtRQUN4RCxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsU0FBUyxDQUFDLENBQUE7SUFDL0MsQ0FBQztJQUVPLHVCQUF1QjtRQUM3QixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUE7UUFDbkIsT0FBTyxDQUFDLFFBQXlCLEVBQWtDLEVBQUU7WUFDbkUsT0FBTyxTQUFTLGNBQWMsQ0FBcUIsU0FBaUI7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
@@ -0,0 +1,9 @@
1
+ import { HttpPlugin } from './http';
2
+ export declare class HttpsPlugin extends HttpPlugin {
3
+ constructor();
4
+ protected applyPatch(): any;
5
+ private getPatchHttpsOutgoingRequest;
6
+ protected applyUnpatch(): void;
7
+ }
8
+ declare const plugin: HttpsPlugin;
9
+ export { plugin };
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const http_1 = require("./http");
4
+ const https = require("https");
5
+ const semver = require("semver");
6
+ const shimmer = require("shimmer");
7
+ class HttpsPlugin extends http_1.HttpPlugin {
8
+ constructor() {
9
+ super('https');
10
+ }
11
+ applyPatch() {
12
+ this.logger.debug('applying patch to %s@%s', this.moduleName, this.version);
13
+ if (this.moduleExports && this.moduleExports.Server &&
14
+ this.moduleExports.Server.prototype) {
15
+ shimmer.wrap(this.moduleExports && this.moduleExports.Server &&
16
+ this.moduleExports.Server.prototype, 'emit', this.getPatchIncomingRequestFunction());
17
+ }
18
+ else {
19
+ this.logger.error('Could not apply patch to %s.emit. Interface is not as expected.', this.moduleName);
20
+ }
21
+ shimmer.wrap(this.moduleExports, 'request', this.getPatchHttpsOutgoingRequest());
22
+ if (semver.satisfies(this.version, '>=8.0.0')) {
23
+ shimmer.wrap(this.moduleExports, 'get', () => {
24
+ return function getTrace(options, callback) {
25
+ const req = https.request(options, callback);
26
+ req.end();
27
+ return req;
28
+ };
29
+ });
30
+ }
31
+ return this.moduleExports;
32
+ }
33
+ getPatchHttpsOutgoingRequest() {
34
+ return (original) => {
35
+ const plugin = this;
36
+ return function httpsOutgoingRequest(options, callback) {
37
+ if (typeof (options) !== 'string') {
38
+ options.protocol = options.protocol || 'https:';
39
+ options.port = options.port || 443;
40
+ options.agent = options.agent || https.globalAgent;
41
+ }
42
+ return (plugin.getPatchOutgoingRequestFunction())(original)(options, callback);
43
+ };
44
+ };
45
+ }
46
+ applyUnpatch() {
47
+ if (this.moduleExports && this.moduleExports.Server &&
48
+ this.moduleExports.Server.prototype) {
49
+ shimmer.unwrap(this.moduleExports && this.moduleExports.Server &&
50
+ this.moduleExports.Server.prototype, 'emit');
51
+ }
52
+ shimmer.unwrap(this.moduleExports, 'request');
53
+ if (semver.satisfies(this.version, '>=8.0.0')) {
54
+ shimmer.unwrap(this.moduleExports, 'get');
55
+ }
56
+ }
57
+ }
58
+ exports.HttpsPlugin = HttpsPlugin;
59
+ const plugin = new HttpsPlugin();
60
+ exports.plugin = plugin;
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY2Vuc3VzL3BsdWdpbnMvaHR0cHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFpQkEsaUNBQW1DO0FBRW5DLCtCQUE4QjtBQUM5QixpQ0FBZ0M7QUFDaEMsbUNBQWtDO0FBR2xDLE1BQWEsV0FBWSxTQUFRLGlCQUFVO0lBRXpDO1FBQ0UsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFBO0lBQ2hCLENBQUM7SUFLUyxVQUFVO1FBQ2xCLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLHlCQUF5QixFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFBO1FBRTNFLElBQUksSUFBSSxDQUFDLGFBQWEsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU07WUFDL0MsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFO1lBQ3ZDLE9BQU8sQ0FBQyxJQUFJLENBQ1IsSUFBSSxDQUFDLGFBQWEsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU07Z0JBQzNDLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFDdkMsTUFBTSxFQUFFLElBQUksQ0FBQywrQkFBK0IsRUFBRSxDQUFDLENBQUE7U0FDcEQ7YUFBTTtZQUNMLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUNiLGlFQUFpRSxFQUNqRSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUE7U0FDckI7UUFFRCxPQUFPLENBQUMsSUFBSSxDQUNSLElBQUksQ0FBQyxhQUFhLEVBQUUsU0FBUyxFQUFFLElBQUksQ0FBQyw0QkFBNEIsRUFBRSxDQUFDLENBQUE7UUFDdkUsSUFBSSxNQUFNLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsU0FBUyxDQUFDLEVBQUU7WUFDN0MsT0FBTyxDQUFDLElBQUksQ0FDVixJQUFJLENBQUMsYUFBYSxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUU7Z0JBWTlCLE9BQU8sU0FBUyxRQUFRLENBQUUsT0FBTyxFQUFFLFFBQVE7b0JBQ3pDLE1BQU0sR0FBRyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQyxDQUFBO29CQUM1QyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUE7b0JBQ1QsT0FBTyxHQUFHLENBQUE7Z0JBQ1osQ0FBQyxDQUFBO1lBQ0gsQ0FBQyxDQUFDLENBQUE7U0FDTDtRQUVELE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQTtJQUMzQixDQUFDO0lBR08sNEJBQTRCO1FBQ2xDLE9BQU8sQ0FBQyxRQUFrQyxFQUE0QixFQUFFO1lBQ3RFLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQTtZQUNuQixPQUFPLFNBQVMsb0JBQW9CLENBQ3pCLE9BQU8sRUFBRSxRQUFRO2dCQUUxQixJQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUMsS0FBSyxRQUFRLEVBQUU7b0JBQ2pDLE9BQU8sQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDLFFBQVEsSUFBSSxRQUFRLENBQUE7b0JBQy9DLE9BQU8sQ0FBQyxJQUFJLEdBQUcsT0FBTyxDQUFDLElBQUksSUFBSSxHQUFHLENBQUE7b0JBQ2xDLE9BQU8sQ0FBQyxLQUFLLEdBQUcsT0FBTyxDQUFDLEtBQUssSUFBSSxLQUFLLENBQUMsV0FBVyxDQUFBO2lCQUNuRDtnQkFDRCxPQUFPLENBQUMsTUFBTSxDQUFDLCtCQUErQixFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FDdkQsT0FBTyxFQUFFLFFBQVEsQ0FBQyxDQUFBO1lBQ3hCLENBQUMsQ0FBQTtRQUNILENBQUMsQ0FBQTtJQUNILENBQUM7SUFHUyxZQUFZO1FBQ3BCLElBQUksSUFBSSxDQUFDLGFBQWEsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU07WUFDL0MsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFO1lBQ3ZDLE9BQU8sQ0FBQyxNQUFNLENBQ1YsSUFBSSxDQUFDLGFBQWEsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU07Z0JBQzNDLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFDdkMsTUFBTSxDQUFDLENBQUE7U0FDWjtRQUNELE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxTQUFTLENBQUMsQ0FBQTtRQUM3QyxJQUFJLE1BQU0sQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxTQUFTLENBQUMsRUFBRTtZQUM3QyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLENBQUE7U0FDMUM7SUFDSCxDQUFDO0NBQ0Y7QUFuRkQsa0NBbUZDO0FBRUQsTUFBTSxNQUFNLEdBQUcsSUFBSSxXQUFXLEVBQUUsQ0FBQTtBQUN2Qix3QkFBTSJ9
@@ -0,0 +1,23 @@
1
+ import { BasePlugin, Span } from '@opencensus/core';
2
+ export declare type IgnoreMatcher = string | RegExp;
3
+ export declare type IORedisPluginConfig = {
4
+ detailedCommands: boolean;
5
+ };
6
+ export declare type IORedisCommand = {
7
+ reject: (err: Error) => void | undefined;
8
+ resolve: (result: any) => void | undefined;
9
+ promise: Promise<any>;
10
+ args: Array<string | Buffer | number>;
11
+ callback: Function | undefined;
12
+ name: string;
13
+ };
14
+ export declare class IORedisPlugin extends BasePlugin {
15
+ protected options: IORedisPluginConfig;
16
+ constructor(moduleName: string);
17
+ protected applyPatch(): any;
18
+ applyUnpatch(): void;
19
+ private getPatchSendCommand;
20
+ patchEnd(span: Span, resultHandler: Function): Function;
21
+ }
22
+ declare const plugin: IORedisPlugin;
23
+ export { plugin };