UNPKG

hud-sdk

Version:

Hud's Node SDK

2 lines 77.3 kB
!function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var r=t();for(var o in r)("object"==typeof exports?exports:e)[o]=r[o]}}(global,(()=>(()=>{"use strict";var e={363:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.updateUserConfigFromInitOptions=t.updateUserConfigFromEnv=t.updateUserConfigFromFile=t.updateUserConfigFromInit=void 0;const o=r(8528),n=r(1569),i=r(8138),s=r(2794),a=r(3073),l=r(9100),u=o.HudInitOptionsSchema.omit({customOptions:!0}).extend({key:n.z.string().optional(),service:n.z.string().optional(),enable:n.z.boolean().optional(),enableDapulse:n.z.boolean().optional()});t.updateUserConfigFromInit=function(e,t){void 0!==e&&(l.hudConfig.userConfig.key={value:e,source:"INIT"}),void 0!==t&&(l.hudConfig.userConfig.service={value:t,source:"INIT"})},t.updateUserConfigFromFile=function(){let e;try{e=(0,s.getConfigContent)()}catch(e){throw e instanceof s.HudFailedReadConfigError&&"EACCES"===e.code&&a.customer_logger.log(i.UserErrorLogs.ConfigInaccessible(e.path)),e}if(e)try{const t=u.partial().parse(JSON.parse(e.content));Object.entries(t).forEach((([t,r])=>{!function(e,t,r){e[t]=r}(l.hudConfig.userConfig,t,{value:r,source:"HUD_CONFIG"===e.source?"CONFIG_ENV":"CONFIG_FILE"})}))}catch(t){throw t instanceof n.ZodError?t.errors.forEach((t=>{const r=t.path.join(".");a.customer_logger.log(i.UserErrorLogs.ZodErrorInUserConfig(e.source,r))})):a.customer_logger.log(i.UserErrorLogs.JSONErrorInUserConfig(e.source,t.message)),t}},t.updateUserConfigFromEnv=function(){const e=process.env.HUD_KEY,t=process.env.HUD_SERVICE,r=process.env.HUD_ENABLE_DAPULSE,o=(0,l.getModulesToTraceFromEnv)(),n=process.env.HUD_MAX_INSTRUMENTED_FUNCTIONS,i=process.env.HUD_MIN_POD_MEMORY_MB;e&&(l.hudConfig.userConfig.key={value:e,source:"ENV"}),t&&(l.hudConfig.userConfig.service={value:t,source:"ENV"}),r&&(l.hudConfig.userConfig.enableDapulse={value:"true"===r,source:"ENV"}),o&&(l.hudConfig.userConfig.includeModules={value:o,source:"ENV"}),n&&(l.hudConfig.userConfig.maxMappedFunctions={value:parseInt(n),source:"ENV"}),i&&(l.hudConfig.userConfig.minPodMemoryMB={value:parseInt(i),source:"ENV"})},t.updateUserConfigFromInitOptions=function(e,t){e.includeModules&&Array.isArray(e.includeModules)&&(l.hudConfig.userConfig.includeModules={value:e.includeModules,source:t}),e.customOptions&&e.customOptions.dapulseSqsConsumer&&(l.hudConfig.userConfig.enableDapulse={value:"true"===e.customOptions.dapulseSqsConsumer,source:t}),e.maxMappedFunctions&&"number"==typeof e.maxMappedFunctions&&(l.hudConfig.userConfig.maxMappedFunctions={value:e.maxMappedFunctions,source:t}),e.minPodMemoryMB&&"number"==typeof e.minPodMemoryMB&&(l.hudConfig.userConfig.minPodMemoryMB={value:e.minPodMemoryMB,source:t}),e.maxFileSizeBytes&&"number"==typeof e.maxFileSizeBytes&&(l.hudConfig.userConfig.maxFileSizeBytes={value:e.maxFileSizeBytes,source:t}),e.maxTimeUntilInitSessionMs&&"number"==typeof e.maxTimeUntilInitSessionMs&&(l.hudConfig.userConfig.maxTimeUntilInitSessionMs={value:e.maxTimeUntilInitSessionMs,source:t})}},669:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.UserLogs=void 0,t.UserLogs={HudInitSuccess:()=>({level:"info",message:"Session started"}),FirstDecalarationSent:()=>({level:"info",message:"First code mapping sent successfully"}),FirstInvocationSent:()=>({level:"info",message:"First invocation sent successfully"}),HappyFlowCompleted:()=>({level:"info",message:"Your service is sending data successfully"}),FilesLoadedBeforeRegister:()=>({level:"info",message:"Files loaded before register():"}),FileBeforeRegisterTemplate:(e,t)=>({level:"info",message:`${e}. ${t}`}),InitIdleMode:()=>({level:"info",message:"Initialized successfully in idle mode."})}},857:e=>{e.exports=require("os")},1012:function(e,t,r){var o=this&&this.__createBinding||(Object.create?function(e,t,r,o){void 0===o&&(o=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,o,n)}:function(e,t,r,o){void 0===o&&(o=r),e[o]=t[r]}),n=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||o(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),t.SDK_VERSION=t.SDK_MODULE_NAME=void 0,n(r(9100),t),n(r(4627),t);var i=r(8809);Object.defineProperty(t,"SDK_MODULE_NAME",{enumerable:!0,get:function(){return i.SDK_MODULE_NAME}}),n(r(2684),t),n(r(363),t);var s=r(3312);Object.defineProperty(t,"SDK_VERSION",{enumerable:!0,get:function(){return s.SDK_VERSION}})},1256:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.logRegisterInRightLocation=t.filterFilesInsideFrameworks=void 0;const o=r(2030),n=r(2241);function i(e,t){return t.filter((t=>{if(t.endsWith(".js"))return!1;const r=`/node_modules/${t}/`;for(const t of e)if(t.includes(r))return!0;return!1}))}t.filterFilesInsideFrameworks=i,t.logRegisterInRightLocation=function(e){try{!function(e){const t=globalThis.hudLoadedModules;if(!t)return;const r=t.filter((e=>!(0,o.skip)(e)));if(r.length>n.hudConfig.uninstrumentedFilesLogThreshold&&n.customer_logger.log(n.UserErrorLogs.UninstrumentedFilesLogThresholdExceeded(r.length)),e){n.instrument_logger.info("Files loaded before register()",{count:r.length}),n.customer_logger.info(n.UserLogs.FilesLoadedBeforeRegister());let e=0;for(const t of r)n.customer_logger.info(n.UserLogs.FileBeforeRegisterTemplate(e,t)),e++}}(e)}catch(e){n.instrument_logger.error("Error in logRegisterInRightLocation",{error:e,stack:e instanceof Error?e.stack:void 0})}try{!function(){const e=globalThis.hudLoadedModules;if(!e)return;const t=i(e,Array.from(n.hudConfig.frameworksToPatch.keys()));t.length>0&&(n.instrument_logger.info("Missing frameworks",{count:t.length}),n.customer_logger.log(n.UserErrorLogs.UninstrumentedFrameworks(t)))}()}catch(e){n.instrument_logger.error("Error in logPreLoadedFrameworks",{error:e,stack:e instanceof Error?e.stack:void 0})}}},1493:e=>{e.exports=require("v8")},1569:e=>{e.exports=require("zod")},1620:e=>{e.exports=require("winston-transport")},1622:function(e,t,r){var o=this&&this.__createBinding||(Object.create?function(e,t,r,o){void 0===o&&(o=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,o,n)}:function(e,t,r,o){void 0===o&&(o=r),e[o]=t[r]}),n=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),i=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&o(t,e,r);return n(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.getMethodKind=t.getContextualData=t.getContextSymbol=t.getFunctionIdentifier=void 0;const s=i(r(6346)),a=r(6346),l=r(8528),u=r(8138),c=r(3073),d=r(2213),p=r(1974);function m(e,t){return{name:t,sourcemap_location_hints:(0,p.getLocationList)(e,t),format:"%s"}}function f(e){if(a.types.isIdentifier(e))return{name:e.name,sourcemap_location_hints:e.loc?[{name:e.name,line:e.loc.start.line,column:e.loc.start.column,line_on_server:e.loc.start.line,column_on_server:e.loc.start.column}]:[],format:"%s"};if(a.types.isMemberExpression(e)||a.types.isOptionalMemberExpression(e)){let t;t=a.types.isThisExpression(e.object)?{name:"this",sourcemap_location_hints:(0,p.getLocationList)(e.object,"this")}:f(e.object);const r=f(e.property),o=e.computed?t.name+"["+r.name+"]":t.name+"."+r.name,n=t.format??"%s",i=r.format??"%s",s=e.computed?`${n}[${i}]`:`${n}.${i}`;return{name:o,sourcemap_location_hints:[...t.sourcemap_location_hints,...r.sourcemap_location_hints],format:s}}if(a.types.isOptionalCallExpression(e)||a.types.isCallExpression(e))return f(e.callee);if(a.types.isSequenceExpression(e))return(0,d.isHudAwaitSequence)(e)?f((0,d.getHudAwaitSequenceElement)(e)):f(e.expressions[e.expressions.length-1]);if(a.types.isArrayExpression(e))return{name:"[]",sourcemap_location_hints:(0,p.getLocationList)(e,"[]"),format:"%s"};if(a.types.isObjectExpression(e))return{name:"{}",sourcemap_location_hints:(0,p.getLocationList)(e,"{}"),format:"%s"};if(a.types.isStringLiteral(e))return{name:`"${e.value}"`,sourcemap_location_hints:(0,p.getLocationList)(e,e.value),format:'"%s"'};throw new u.HudUnsupportedError("Unsupported left side of assignment - "+e.type+"loc - "+JSON.stringify(e.loc))}function g(e){const{node:t}=e;if(e.isExpression())try{return function(e){const{parent:t}=e;if(a.types.isVariableDeclarator(t)&&a.types.isIdentifier(t.id))return m(t,t.id.name);if(a.types.isObjectProperty(t)&&a.types.isIdentifier(t.key))return m(t,t.key.name);if(a.types.isClassProperty(t)&&a.types.isIdentifier(t.key))return m(t,t.key.name);if(a.types.isAssignmentExpression(t))return f(t.left);if(a.types.isAssignmentPattern(t))return f(t.left);throw new u.HudUnsupportedError(`Unsupported parent type - ${t.type} for me ${e.node.type}`)}(e)}catch(e){if(e instanceof u.HudUnsupportedError)return;throw e}c.worker_logger.debug("getContextSymbol; Unsupported node type",{type:t.type})}function y(e){const t=[];return e.arguments.forEach(((e,r)=>{let o,n;a.types.isStringLiteral(e)?(o=l.ArgumentTypes.StringLiteral,n=e.value):a.types.isTemplateLiteral(e)?(o=l.ArgumentTypes.TemplateString,n=function(e){let t="";const r=e.quasis,o=e.expressions;for(let e=0;e<r.length;e++)t+=r[e].value.cooked,e<o.length&&(t+=`\${${h(o[e])}}`);return t=`\`${t}\``,t}(e)):a.types.isIdentifier(e)&&(o=l.ArgumentTypes.Identifier,n=e.name),o&&n&&t.push({index:r,type:o,value:n})})),t}function h(e){if(a.types.isIdentifier(e))return e.name;if(a.types.isStringLiteral(e))return e.value;if(a.types.isCallExpression(e)||a.types.isOptionalCallExpression(e)){const t=e;if(a.types.isIdentifier(t.callee))return t.callee.name;if(a.types.isMemberExpression(t.callee)||a.types.isOptionalMemberExpression(t.callee)){let e="";const r=t.callee;if(a.types.isThisExpression(r.object)?e+="this.":a.types.isIdentifier(r.object)&&(e+=`${r.object.name}.`),""!==e&&a.types.isIdentifier(r.property))return e+=`${r.property.name}`,e}}return""}t.getFunctionIdentifier=function(e){const{node:t}=e;if(a.types.isFunctionDeclaration(t)||a.types.isFunctionExpression(t)){if(a.types.isIdentifier(t.id))return t.id}else if(a.types.isClassMethod(t)){if(a.types.isIdentifier(t.key))return t.key}else if(a.types.isClassPrivateMethod(t)){if(a.types.isIdentifier(t.key.id))return t.key.id}else if(a.types.isObjectMethod(t)&&a.types.isIdentifier(t.key))return t.key},t.getContextSymbol=g,t.getContextualData=function(e){let t,r=!1;return(e.isFunctionExpression()||e.isArrowFunctionExpression())&&(t=function(e){const t=e.parentPath;if(t.isCallExpression())for(const[r,o]of t.node.arguments.entries())if(o===e.node){const e=t.node.callee;let o;try{o=f(e)}catch(t){if(!(t instanceof u.HudUnsupportedError))throw t;c.worker_logger.debug("could not get callee symbol recursively",{error:t,type:e.type})}const n=y(t.node);return{callee:{symbol:o,argsCount:t.node.arguments.length,args:n},index:r}}}(e),r=function(e){const t=e.parentPath;return!!t.isCallExpression()&&t.node.callee===e.node}(e)),{symbol:g(e),callback:t,immediatelyInvoked:r}},t.getMethodKind=function(e){if(s.types.isClassMethod(e)||s.types.isObjectMethod(e)||s.types.isClassPrivateMethod(e))return e.kind}},1974:function(e,t,r){var o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.getNodeLocation=t.resolveScopeSymbols=t.resolveSymbol=t.getLocationList=void 0;const n=o(r(9023)),i=r(3073);function s(e,t){let r=t.name;const o=t.sourcemap_location_hints.map((t=>{const r=e({line:t.line,column:t.column});if(null===r.line||null===r.column)return{name:t.name,line:-1,column:-1,line_on_server:t.line_on_server,column_on_server:t.column_on_server};let o=r.name??t.name??void 0;return o?.startsWith("#")&&(o=o.slice(1)),{name:o,line:r.line,column:r.column,line_on_server:t.line_on_server,column_on_server:t.column_on_server,resolved:!0}}));return o.length>0&&o.every((e=>e.name))&&(t.format?Array.from(t.format.matchAll(/%s/g)).length!==o.length?i.worker_logger.warn("Format string does not match number of location hints",{format:t.format,locationHints:o}):r=n.default.format(t.format,...o.map((e=>e.name))):r=o.map((e=>e.name)).join(".")),{name:r,sourcemap_location_hints:o}}t.getLocationList=function(e,t){return e.loc?[{line:e.loc.start.line,column:e.loc.start.column,line_on_server:e.loc.start.line,column_on_server:e.loc.start.column,name:t}]:[]},t.resolveSymbol=s,t.resolveScopeSymbols=function(e,t){const{context:r}=t,o=r.symbol?s(e,r.symbol):void 0,n=s(e,t.symbol);return{...t,context:{...r,symbol:o},symbol:n}},t.getNodeLocation=function(e,t,r=void 0){const o=e.loc?.start,n=e.loc?.end;if(!o||!n)return i.worker_logger.info("Node without location",{filename:r,type:e.type}),{start:{source:null,line:-1,column:-1},end:{source:null,line:-1,column:-1}};const s=t({line:o.line,column:o.column}),a=t({line:n.line,column:n.column});return null!==s.line&&null!==s.column&&null!==a.line&&null!==a.column||(i.worker_logger.debug("Could not find location for function",{filename:r,type:e.type,locStart:o,locEnd:n}),s.line=-1,s.column=-1,a.line=-1,a.column=-1),{start:{source:s.source,line:s.line,column:s.column},end:{source:a.source,line:a.line,column:a.column}}}},2030:e=>{e.exports=require("./instrument")},2213:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getHudAwaitSequenceElement=t.isHudAwaitSequence=void 0;const o=r(6346),n=r(1012),i=r(8138);t.isHudAwaitSequence=function(e){if(e.expressions.length<2)return!1;const t=e.expressions[e.expressions.length-1];return!!o.types.isIdentifier(t)&&!!t.name.startsWith(n.hudConfig.wrapVarPrefix)},t.getHudAwaitSequenceElement=function(e){const t=e.expressions[0];if(!o.types.isAssignmentExpression(t))throw new i.HudUnsupportedError("Expected assignment expression");const{left:r,right:s}=t;if(!o.types.isIdentifier(r)||!r.name.startsWith(n.hudConfig.wrapVarPrefix))throw new i.HudUnsupportedError("Expected identifier starting with "+n.hudConfig.wrapVarPrefix);return s}},2240:e=>{e.exports=require("./core")},2241:function(e,t,r){var o=this&&this.__createBinding||(Object.create?function(e,t,r,o){void 0===o&&(o=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,o,n)}:function(e,t,r,o){void 0===o&&(o=r),e[o]=t[r]}),n=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||o(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),n(r(1012),t),n(r(8287),t),n(r(8138),t),n(r(8808),t),n(r(2794),t),n(r(7582),t),n(r(3073),t),n(r(5290),t),n(r(5822),t),n(r(3699),t),n(r(4219),t),n(r(4451),t),n(r(2908),t),n(r(2451),t),n(r(3431),t),n(r(669),t),n(r(8066),t)},2298:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.isNamespaceScopeable=t.isHudScopeable=t.NamespaceScopeAlias=t.ScopableAlias=void 0;const o=r(6346);t.ScopableAlias="ArrowFunctionExpression|BlockStatement|CatchClause|ClassMethod|ClassPrivateMethod|DeclareModule|DoExpression|DoWhileStatement|ForInStatement|ForOfStatement|ForStatement|FunctionDeclaration|FunctionExpression|IfStatement|LabeledStatement|ObjectMethod|StaticBlock|SwitchCase|TSModuleBlock|TryStatement|WhileStatement|WithStatement|ClassDeclaration|ClassExpression|ObjectExpression|SwitchStatement",t.NamespaceScopeAlias="FunctionDeclaration|FunctionExpression|ArrowFunctionExpression|ObjectMethod|ClassMethod|ClassPrivateMethod|ClassDeclaration|ClassExpression|ObjectExpression",t.isHudScopeable=function(e){return o.types.isArrowFunctionExpression(e)||o.types.isBlockStatement(e)||o.types.isCatchClause(e)||o.types.isClassMethod(e)||o.types.isClassPrivateMethod(e)||o.types.isDeclareModule(e)||o.types.isDoExpression(e)||o.types.isDoWhileStatement(e)||o.types.isForInStatement(e)||o.types.isForOfStatement(e)||o.types.isForStatement(e)||o.types.isFunctionDeclaration(e)||o.types.isFunctionExpression(e)||o.types.isIfStatement(e)||o.types.isLabeledStatement(e)||o.types.isObjectMethod(e)||o.types.isProgram(e)||o.types.isStaticBlock(e)||o.types.isSwitchCase(e)||o.types.isTSModuleBlock(e)||o.types.isTryStatement(e)||o.types.isWhileStatement(e)||o.types.isWithStatement(e)||o.types.isClassDeclaration(e)||o.types.isClassExpression(e)||o.types.isObjectExpression(e)||o.types.isSwitchStatement(e)},t.isNamespaceScopeable=function(e){return o.types.isFunction(e)||o.types.isClass(e)||o.types.isObjectExpression(e)}},2451:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getUserTsNodeConfig=void 0;const o=r(8138),n=r(3073),i=r(8066);t.getUserTsNodeConfig=function(e=!0){const t=function(){try{const e=i.myRequire.resolve("ts-node");if(!e)return;if(!i.myRequire.cache[e])return;const t=(0,i.myRequire)("ts-node"),r=process[t.REGISTER_INSTANCE];if(!r)return;return r.options}catch(e){return void n.app_logger.error("Error getting ts-node config",{msg:e instanceof Error?e.message:void 0,stack:e instanceof Error?e.stack:void 0})}}();if(t){if(!t.transpileOnly)throw e&&n.customer_logger.log(o.UserErrorLogs.TsNodeNotTranspileOnly()),n.app_logger.warn("ts-node is used but not configured to transpile only"),new o.HudNoTranspileOnlyError;return{cwd:t.cwd,project:t.project,projectSearchDir:t.projectSearchDir}}if(n.app_logger.info("ts-node not found",{argv0:process.argv[0]}),process.argv[0].endsWith("ts-node"))throw e&&n.customer_logger.log(o.UserErrorLogs.TsNodeNotFoundEvenThoughRunWithTsNode()),n.app_logger.info("ts-node not found even run with ts-node"),new o.HudTsNodeNotFoundButUsed}},2546:e=>{e.exports=require("./lib")},2684:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ObjectStoreConfigSchema=void 0;const o=r(1569),n=o.z.object({type:o.z.literal("s3")}),i=o.z.object({type:o.z.literal("disk"),path:o.z.string()});t.ObjectStoreConfigSchema=o.z.union([n,i])},2784:e=>{e.exports=require("../native/_index")},2794:function(e,t,r){var o=this&&this.__createBinding||(Object.create?function(e,t,r,o){void 0===o&&(o=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,o,n)}:function(e,t,r,o){void 0===o&&(o=r),e[o]=t[r]}),n=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),i=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&o(t,e,r);return n(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.getConfigContent=t.HudFailedReadConfigError=t.isHudEnabled=void 0;const s=i(r(9896)),a=i(r(6928)),l=r(8138),u=r(3073);t.isHudEnabled=function(){if("false"===process.env.HUD_ENABLE)return!1;if(globalThis.forceHudEnable)return!0;let e,t;try{if(e=d(),e&&(t=JSON.parse(e.content),!1===t.enable))return!1}catch(t){throw t instanceof c&&"EACCES"===t.code?u.customer_logger.log(l.UserErrorLogs.ConfigInaccessible(t.path)):e&&u.customer_logger.log(l.UserErrorLogs.JSONErrorInUserConfig(e.source,t instanceof Error?t.message:void 0)),t}return"true"===process.env.HUD_ENABLE||!0===t?.enable};class c extends Error{path;code;constructor(e,t){super(),this.path=e,this.code=t}}function d(){if(process.env.HUD_CONFIG)return{content:process.env.HUD_CONFIG,source:"HUD_CONFIG"};const e=function(){try{const e=process.env.HUD_CONFIG_PATH;if(e)return s.existsSync(e)?e:void 0;let t=__dirname,r=0;for(;"/"!==t&&r<10;){const e=`${t}/hud.config`;if(s.existsSync(e))return e;t=a.dirname(t),r++}}catch(e){return}}();if(e)try{return{content:s.readFileSync(e,"utf8"),source:e}}catch(t){throw new c(e,t.code)}}t.HudFailedReadConfigError=c,t.getConfigContent=d},2908:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.suppressTraces=void 0;const o=r(1012),n=r(3073),i=r(8066);let s,a;try{const e=(0,i.myRequire)("@opentelemetry/api"),t=(0,i.myRequire)("@opentelemetry/core");s=e.context,a=t.suppressTracing,n.app_logger.info("OpenTelemetry exists",{suppressConfig:o.hudConfig.suppressTraces})}catch(e){n.app_logger.info("OpenTelemetry api/core does not exist")}t.suppressTraces=function(e){return function(...t){return o.hudConfig.suppressTraces&&s&&a?(n.app_logger.debug("Running with Suppressed traces"),s.with(a(s.active()),(()=>e(...t)))):e(...t)}}},2987:e=>{e.exports=require("perf_hooks")},3073:function(e,t,r){var o=this&&this.__createBinding||(Object.create?function(e,t,r,o){void 0===o&&(o=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,o,n)}:function(e,t,r,o){void 0===o&&(o=r),e[o]=t[r]}),n=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),i=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&o(t,e,r);return n(t,e),t},s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.worker_logger=t.instrument_logger=t.app_logger=t.customer_logger=t.formatLogMessage=t.SafeLogger=t.renewFileTransports=t.getSavedLogs=t.getLogPath=t.WorkerPortTransport=void 0;const a=i(r(6982)),l=i(r(9896)),u=i(r(857)),c=i(r(6928)),d=i(r(5124)),p=s(r(1620)),m=r(9100),f={...process.env.HUD_DEBUG?m.hudConfig.logger.debug:m.hudConfig.logger.default,console:!!process.env.HUD_VERBOSE};class g extends p.default{_messeagesToSend=[];messagesLimit=m.hudConfig.loggerWorkerPortSizeLimit;messageDropCount=0;getMessagesToSend(){if(!this._messeagesToSend.length)return!1;const e=this._messeagesToSend;this.clearMessagesToSend();const t=this.messageDropCount;return this.messageDropCount=0,{logsBuf:this.formatMessagesToSend(e),messageDropCount:t}}clearMessagesToSend(){this._messeagesToSend=[]}formatMessagesToSend(e){return e.map((e=>JSON.stringify(e))).join("\n")}log(e,t){this._messeagesToSend.length>=this.messagesLimit?this.messageDropCount++:this._messeagesToSend.push(e),t()}}t.WorkerPortTransport=g;const y=d.format.combine(d.format.timestamp({format:"HH:mm:ss.SSS"}),d.format.printf((({level:e,message:t,timestamp:r,label:o,...n})=>{try{const i=Object.keys(n).length;let s;if(i)if(1===i){const e=Object.keys(n)[0];s=`${t} ${e}: ${JSON.stringify(n[e],null,2)}`}else s=`${t}\n${JSON.stringify(n,null,2)}`;else s=t;const a=d.format.colorize().colorize(e,e.toUpperCase());return`[${r}]${(o?`(${o})`:"").padEnd(8," ")} ${a}: ${s}`}catch(e){return t}})));function h(e){return d.format.combine(d.format.label({label:e}),d.format.timestamp({format:()=>(new Date).toISOString()}),d.format.json())}function v(e){return{filename:E(),level:f.levels[e],format:h(e),lazy:!1}}function _(){if(m.hudConfig.logDirectory)return m.hudConfig.logDirectory;const e=u.homedir();switch(u.platform()){case"darwin":return c.join(e,"Library","Logs","hud");case"win32":return c.join(e,"AppData","hud","Logs");default:return c.join(e,".hud","logs")}}let b;function E(){return b??=c.join(_(),`${a.randomUUID()}.log`)}t.getLogPath=E,t.getSavedLogs=function(){const e=[];for(const[t,r]of Object.entries(S))for(const t of r.transports)try{if(t instanceof g){const o=t.getMessagesToSend();if(!o)continue;const{logsBuf:n,messageDropCount:i}=o;i&&r.info(`Dropped ${i} messages`),e.push(n)}}catch(e){r.error("Failed to get saved logs",e)}return e},t.renewFileTransports=function(){const e=new Date,t=new Set;for(const[r,o]of Object.entries(S)){const r=[],n=[];for(const i of o.transports)if(i instanceof d.transports.File){r.push(i),n.push(new d.transports.File({level:i.level,format:i.format,filename:c.join(i.dirname,i.filename),lazy:!1}));const o=c.join(_(),`${a.randomUUID()}-${e.toISOString().replaceAll(":","")}.log`);l.existsSync(c.join(i.dirname,i.filename))&&(l.renameSync(c.join(i.dirname,i.filename),o),t.add(o))}for(const e of r)o.remove(e),e.close&&e.close();for(const e of n)o.add(e)}return t};const S={};class C{name;logger;constructor(e){this.name=e;try{this.logger=function(e){const t=[];f.console&&t.push(new d.transports.Console({format:d.format.combine(d.format.label({label:e}),y)}));let r=!1;if(!m.hudConfig.fileless)try{t.push(function(e){const t=v(e),r=c.dirname(t.filename);return l.mkdirSync(r,{recursive:!0}),l.writeFileSync(t.filename,"",{flag:"w"}),new d.transports.File(t)}(e))}catch{r=!0}(m.hudConfig.fileless||r)&&t.push(function(e){const t=h(e);return new g({format:t})}(e));const o=d.createLogger({level:f.levels[e],transports:t});return S[e]=o,r&&o.info("Could not create file transport, fallback succesfully to worker port"),m.hudConfig.fileless&&o.info("Fileless mode is enabled"),o}(e)}catch(e){this.logger=void 0}}isValid(){return!!this.logger}log(e,t,...r){if(this.logger)try{this.logger.log(e,t,...r)}catch{}}error(e,...t){this.log("error",e,...t)}warn(e,...t){this.log("warn",e,...t)}info(e,...t){this.log("info",e,...t)}http(e,...t){this.log("http",e,...t)}verbose(e,...t){this.log("verbose",e,...t)}debug(e,...t){this.log("debug",e,...t)}silly(e,...t){this.log("silly",e,...t)}}function w(e,t,r){let o=`Hud: ${e}`;return r&&(o+=" For more information visit https://docs.hud.io/docs/node-sdk-ie."),void 0!==t&&(o+=` ${t}`),o}t.SafeLogger=C,t.formatLogMessage=w,t.customer_logger=d.createLogger({level:m.hudConfig.customerLoggerLevel,transports:[new d.transports.Console({})],format:d.format.printf((({message:e,errCode:t,moreInfo:r})=>{try{return w(e,t,r)}catch(t){return e}}))}),t.app_logger=new C("app"),t.instrument_logger=new C("instrument"),t.worker_logger=new C("worker")},3176:e=>{e.exports=require("buffer-crc32")},3312:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SDK_VERSION=void 0,t.SDK_VERSION="1.6.6"},3431:function(e,t,r){var o=this&&this.__createBinding||(Object.create?function(e,t,r,o){void 0===o&&(o=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,o,n)}:function(e,t,r,o){void 0===o&&(o=r),e[o]=t[r]}),n=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),i=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&o(t,e,r);return n(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.unrefSetInterval=t.unrefSetTimeout=t.unrefSetImmediate=void 0;const s=i(r(6460));t.unrefSetImmediate=function(e,t){return s.setImmediate(e,{...t,ref:!1})},t.unrefSetTimeout=function(e,t,r){return s.setTimeout(e,t,{...r,ref:!1})},t.unrefSetInterval=function(e,t,r){return s.setInterval(e,t,{...r,ref:!1})}},3699:function(e,t,r){var o=this&&this.__createBinding||(Object.create?function(e,t,r,o){void 0===o&&(o=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,o,n)}:function(e,t,r,o){void 0===o&&(o=r),e[o]=t[r]}),n=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),i=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&o(t,e,r);return n(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.shouldRunHud=t.isSupportedNative=t.isDebuggerAttached=void 0;const s=i(r(6592)),a=r(5919),l=r(1012),u=r(8138),c=r(4715),d=r(2794),p=r(3073);function m(){if("true"===process.env.HUD_ALLOW_DEBUGGER)return!1;if(process.execArgv.some((e=>e.includes("--inspect")||e.includes("--debug")||e.includes("--inspect-brk")||e.includes("--debug-brk"))))return!0;try{return"string"==typeof s.url()}catch(e){return!1}}function f(){return void 0!==r(2784).transform}t.isDebuggerAttached=m,t.isSupportedNative=f,t.shouldRunHud=function(){return"false"===process.env.HUD_ENABLE?{shouldRun:!1,error:u.UserErrorLogs.HudEnableIsFalse()}:a.isMainThread?(0,d.isHudEnabled)()?process.versions.bun?{shouldRun:!1,error:u.UserErrorLogs.RunningInBun()}:"win32"===process.platform?{shouldRun:!1,error:u.UserErrorLogs.RunningOnWindows()}:function(){const e=process.versions.node.split(".")[0];return!!l.hudConfig.supportedNodeVersions.includes(e)}()?process.env.AWS_LAMBDA_FUNCTION_MEMORY_SIZE&&!function(){try{return"1"===process.env.HUD_INTERNAL_EXEC_WRAPPER_USED}catch(e){return!1}}()?{shouldRun:!1,error:u.UserErrorLogs.LambdaNotViaLayer()}:m()?{shouldRun:!1,error:u.UserErrorLogs.DebuggerAttached()}:function(){const e=(0,c.getMemoryLimitInfo)();return!!(0,c.isMemoryLimitBigEnough)(e)}()?f()?{shouldRun:!0}:{shouldRun:!1,error:u.UserErrorLogs.UnsupportedNativeBuild()}:{shouldRun:!1,error:u.UserErrorLogs.PodMemoryLimitTooLow(l.hudConfig.userConfig.minPodMemoryMB?.value??Number.MAX_SAFE_INTEGER)}:{shouldRun:!1,error:u.UserErrorLogs.UnsupportedNodeVersion()}:{shouldRun:!1,error:u.UserErrorLogs.HudEnableNotSet(process.env.HUD_ENABLE)}:(p.app_logger.info("required not from main thread"),{shouldRun:!1,error:null})}},3903:e=>{e.exports=require("uuid")},4219:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.safeCall=void 0;const o=r(8138);t.safeCall=function(e,t){return t.catch((t=>{(0,o.isAbortError)(t)||e.error("Unhandled exception on async task",{msg:t instanceof Error?t.message:void 0,stack:t instanceof Error?t.stack:void 0})}))}},4451:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.combineSourceMaps=t.shouldSupportSourceMap=void 0;const o=r(1012),n=r(3073);t.shouldSupportSourceMap=function(){return!!o.hudConfig.supportSourceMap&&(process.execArgv.includes("--enable-source-maps")&&n.instrument_logger.warn("--enable-source-maps is set, enabling custom source-map-support anyway"),!0)},t.combineSourceMaps=function(e,t){if(0===e.length)return;if(1===e.length&&void 0===e[0].lineOffset)return e[0].map;const r=e.map((e=>({offset:{line:e.transformedLineOffset,column:e.transformedColumnOffset},map:{..."string"==typeof e.map?JSON.parse(e.map):e.map,file:t}}))),o={version:3,file:t,sections:r};return JSON.stringify(o)}},4627:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.updateDynamicConfig=void 0;const o=r(9100);t.updateDynamicConfig=function(e,t,r){const n=o.HudDynamicConfigSchema.deepPartial().safeParse(e);if(!n.success)return r.error("Dynamic configuration not updated - Invalid configuration override",{remoteConfigParseResult:n,remoteConfig:e}),t.dynamicConfig;const i={...t.dynamicConfig,...n.data,investigationRateLimits:{...t.dynamicConfig.investigationRateLimits,...n.data.investigationRateLimits}};return void 0!==i.enableInvestigation&&i.enableInvestigation!==t.dynamicConfig.enableInvestigation&&(r.info("Dynamic configuration updated - enableInvestigation",{hudEnableInvestigation:i.enableInvestigation}),t.isInvestigationEnabledByEnv||(globalThis.hudEnableInvestigation=i.enableInvestigation)),i}},4634:e=>{e.exports=require("source-map")},4715:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.isMemoryLimitBigEnough=t.getMemoryLimitInfo=void 0;const o=r(1012),n=r(3073),i=r(5290);t.getMemoryLimitInfo=function(){const e=(0,i.getPodMemoryLimit)(n.app_logger);return n.app_logger.info(`Pod memory limit: ${null===e.podMemoryLimitMB?"unknown":e.podMemoryLimitMB+"MB"} from ${e.source}, minimum required: ${o.hudConfig.userConfig.minPodMemoryMB?.value??Number.MAX_SAFE_INTEGER}MB`),e},t.isMemoryLimitBigEnough=function(e){return null===e.podMemoryLimitMB||e.podMemoryLimitMB>=(o.hudConfig.userConfig.minPodMemoryMB?.value??Number.MAX_SAFE_INTEGER)}},5124:e=>{e.exports=require("winston")},5290:function(e,t,r){var o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.getPodMemoryLimit=void 0;const n=r(9896),i=o(r(857));let s=null;function a(e,t){const r=parseInt(e);if(isNaN(r))return null;const o=Math.floor(r/1048576);return o<=0||o>=131072?(t.debug(`Treating memory value (${e} bytes) as unlimited.`),null):o}function l(e,t,r){if(!e)return{podMemoryLimitMB:null,source:null};const o=a(e,r);return null!==o?{podMemoryLimitMB:o,source:t}:{podMemoryLimitMB:null,source:null}}function u(e){try{return(0,n.readFileSync)(e,"utf8")}catch{return null}}function c(){const e=i.default.totalmem();return{podMemoryLimitMB:Math.floor(e/1048576),source:"system-memory"}}t.getPodMemoryLimit=function(e){if(null!==s)return s;if("linux"!==i.default.platform())return s=c(),s;let t=function(e,t){for(const e of["/sys/fs/cgroup/memory.max","/sys/fs/cgroup/memory.high"]){const r=u(e);if(!r)continue;const o=r.trim();if("max"===o){t.debug(`Found 'max' value in ${e}, will use system memory instead`);continue}const n=a(o,t);if(null!==n)return{podMemoryLimitMB:n,source:e}}return{podMemoryLimitMB:null,source:null}}(0,e);return null!==t.podMemoryLimitMB?(e.info(`Found pod memory limit: ${t.podMemoryLimitMB}MB from ${t.source}`),t):(t=function(e,t){for(const e of["/sys/fs/cgroup/memory/memory.stat","/sys/fs/cgroup/memory/memory.limit_in_bytes"]){const r=u(e);if(r)if(e.endsWith("memory.stat")){const o=["hierarchical_memory_limit","memory.limit_in_bytes","limit_in_bytes"],n=r.split("\n");for(const r of o){const o=n.find((e=>e.startsWith(r)));if(o){const n=l(o.split(" ")[1],`${e}:${r}`,t);if(null!==n.podMemoryLimitMB)return n}}}else{const o=l(r.trim(),e,t);if(null!==o.podMemoryLimitMB)return o}}return{podMemoryLimitMB:null,source:null}}(0,e),null!==t.podMemoryLimitMB?(e.info(`Found pod memory limit: ${t.podMemoryLimitMB}MB from ${t.source}`),t):(t=c(),e.info(`No container memory limit found, using system memory: ${t.podMemoryLimitMB}MB`),s=t,t))}},5595:function(e,t,r){var o=this&&this.__createBinding||(Object.create?function(e,t,r,o){void 0===o&&(o=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,o,n)}:function(e,t,r,o){void 0===o&&(o=r),e[o]=t[r]}),n=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),i=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&o(t,e,r);return n(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.getParameterInfo=void 0;const s=i(r(6346)),a=r(8528),l=r(3073);function u(e,t=0){if(void 0!==e.loc&&null!==e.loc)return{line:e.loc.start.line,column:e.loc.start.column+t,line_on_server:e.loc.start.line,column_on_server:e.loc.start.column+t}}function c(e){return s.types.isIdentifier(e.argument)?{name:e.argument.name,type:a.ParameterTypes[e.type],sourcemap_location_hint:u(e,e.argument.name.length+3)}:(l.worker_logger.warn("Unsupported rest element",{type:e.argument.type}),{type:a.ParameterTypes[e.type],sourcemap_location_hint:u(e)})}function d(e){var t;if(e)switch(e?.type){case"Identifier":return{name:(t=e).name,type:a.ParameterTypes[t.type],sourcemap_location_hint:u(t,t.name.length)};case"AssignmentPattern":return function(e,t,r){return{type:a.ParameterTypes[e.type],sourcemap_location_hint:u(e),left:t,right:r}}(e,d(e.left),function(e){switch(e.type){case"StringLiteral":case"NumericLiteral":case"BooleanLiteral":case"BigIntLiteral":case"DecimalLiteral":return{type:e.type,value:e.value};case"RegExpLiteral":return{type:e.type,value:e.pattern}}return{type:e.type}}(e.right));case"ArrayPattern":return function(e,t){return{type:a.ParameterTypes[e.type],sourcemap_location_hint:u(e),elements:t}}(e,e.elements.map((e=>d(e))).filter((e=>void 0!==e)));case"RestElement":return c(e);case"ObjectPattern":{const t=[];return e.properties.forEach((e=>{if(s.types.isObjectProperty(e)){const r=s.types.isIdentifier(e.key)&&s.types.isIdentifier(e.value)||s.types.isAssignmentPattern(e.value)?void 0:d(e.key);t.push(function(e,t,r){return{type:a.ParameterTypes[e.type],sourcemap_location_hint:u(e),key:t,value:r}}(e,r,d(e.value)))}else s.types.isRestElement(e)&&t.push(c(e))})),function(e,t){return{type:a.ParameterTypes[e.type],sourcemap_location_hint:u(e),properties:t}}(e,t)}default:l.worker_logger.warn("Unsupported parameter type",{type:e.type})}}t.getParameterInfo=function(e,t){return e.node.params.map((e=>{try{return d(e)}catch(e){return}})).filter((e=>void 0!==e)).map((e=>{let r;if(void 0!==e.sourcemap_location_hint){const{name:o,line:n,column:i}=t({line:e.sourcemap_location_hint.line,column:e.sourcemap_location_hint.column}),s={line_on_server:e.sourcemap_location_hint.line_on_server,column_on_server:e.sourcemap_location_hint.column_on_server};null===n||null===i?(l.worker_logger.debug("Could not find location for parameter",{type:e.type}),r={name:o??void 0,line:-1,column:-1,...s}):r={name:o??void 0,line:n,column:i,...s}}return{...e,name:r?.name??e.name,type:e.type,sourcemap_location_hint:r??e.sourcemap_location_hint}}))}},5822:function(e,t,r){var o=this&&this.__createBinding||(Object.create?function(e,t,r,o){void 0===o&&(o=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,o,n)}:function(e,t,r,o){void 0===o&&(o=r),e[o]=t[r]}),n=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),i=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&o(t,e,r);return n(t,e),t},s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.loopLogProcessPerformance=t.getCpuLimit=t.getCpuLimitUnsafe=t.loopLogThreadPerformance=void 0;const a=r(9896),l=s(r(857)),u=r(2987),c=i(r(1493)),d=r(2908),p=r(3431);function m(e){e.info("Trying to detect CPU limit");try{const t=(0,a.readFileSync)("/sys/fs/cgroup/cpu/cpu.cfs_quota_us","utf8"),r=(0,a.readFileSync)("/sys/fs/cgroup/cpu/cpu.cfs_period_us","utf8");return e.info("CPU limit detected for cgroups v1",{cpuQuota:t,cpuPeriod:r}),parseInt(t.toString())/parseInt(r.toString())}catch(t){try{const t=(0,a.readFileSync)("/sys/fs/cgroup/cpu.max","utf8"),[r,o,n]=t.trim().split(" ");return e.info("CPU limit detected for cgroups v2",{max:r,period:o}),r&&o?"max"===r?"unlimited":parseInt(r)/parseInt(o):void e.info("cpu.max file is not in the expected format",t)}catch(r){return void e.info("Failed to detect CPU limit",{e:t,e2:r})}}}t.loopLogThreadPerformance=async function(e,t,r){let o=u.performance.eventLoopUtilization(),n=u.performance.nodeTiming.toJSON();for await(const i of(0,p.unrefSetInterval)(t,void 0,{signal:r}))try{const t=u.performance.eventLoopUtilization(),r=u.performance.eventLoopUtilization(t,o);o=t;const i=c.getHeapStatistics(),s=u.performance.nodeTiming.toJSON(),a=s.idleTime-n.idleTime,l=s.duration-n.duration,d=a/l;n=s,e.info("thread performance statistics",{thread_elu_percentage:100*r.utilization,memory:{thread_heap_utilization_percentage:i.total_heap_size/i.heap_size_limit*100},idleTime:a,totalTime:l,idleTimePercentage:d})}catch(t){e.error("Failed logging thread performance statistics",{msg:t instanceof Error?t.message:void 0,stack:t instanceof Error?t.stack:void 0})}},t.getCpuLimitUnsafe=m,t.getCpuLimit=(0,d.suppressTraces)(m),t.loopLogProcessPerformance=async function(e,r,o){const n=l.default.totalmem(),i=(0,t.getCpuLimit)(e);let s=process.cpuUsage();for await(const t of(0,p.unrefSetInterval)(r,void 0,{signal:o}))try{const t=process.memoryUsage(),o=process.uptime(),a=process.cpuUsage(s);s=process.cpuUsage();let l=(a.user+a.system)/(1e3*r);i&&"number"==typeof i&&(l/=i),e.info("process performance statistics",{memory:{process_memory_rss:t.rss,process_memory_utilization_percentage:t.rss/n*100},cpu:100*l,cpuStats:{limit:i,usagePercentage:100*l},uptime:o})}catch(t){e.error("Failed logging process performance statistics",{msg:t instanceof Error?t.message:void 0,stack:t instanceof Error?t.stack:void 0})}}},5919:e=>{e.exports=require("node:worker_threads")},6346:e=>{e.exports=require("@babel/core")},6460:e=>{e.exports=require("timers/promises")},6592:e=>{e.exports=require("node:inspector")},6760:e=>{e.exports=require("node:path")},6827:function(e,t,r){var o=this&&this.__createBinding||(Object.create?function(e,t,r,o){void 0===o&&(o=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,o,n)}:function(e,t,r,o){void 0===o&&(o=r),e[o]=t[r]}),n=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),i=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&o(t,e,r);return n(t,e),t},s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.parseDeclarations=t.readFile=t.getRealPositionFunc=t.fixSourceMap=void 0;const a=i(r(6346)),l=r(8528),u=s(r(9896)),c=r(4634),d=r(1622),p=s(r(6760)),m=r(1012),f=r(8528),g=s(r(3176)),y=r(2784),h=r(3903),v=r(3073),_=r(8066),b=r(7064),E=r(5595),S=r(7087),C=r(1974),w=r(2298),I={babelrc:!1,configFile:!1};function M(e){let t;return t="string"==typeof e?JSON.parse(e):e,t.sources=t.sources.map((e=>e.replace(/^webpack:\/\/(?:@[^/]+?[/])?[^/]+\//,""))),t}function x(e,t,r){return o=>{const n=e?.originalPositionFor({line:o.line,column:o.column})??{line:o.line,column:o.column,source:null,name:null},i=null!==n.line?n.line+(t||0):null,s=null!==n.column?n.column+(1===n.line&&r||0):null;return{...n,line:i,column:s}}}let k;t.fixSourceMap=M,t.getRealPositionFunc=x,t.readFile=async function(e,t,r){try{if(t&&r){const o=Buffer.alloc(r-t),n=await u.default.promises.open(e,"r");return await n.read(o,0,r-t,t),await n.close(),o.toString("utf-8")}return await u.default.promises.readFile(e,"utf-8")}catch(t){return void v.worker_logger.error("Failed to read file",{filename:e,msg:t instanceof Error?t.message:t})}},t.parseDeclarations=async function(e,t,r=null,o){const{filename:n,bundlerBuildId:i,bundlerBuildIdGenerated:s,lineOffset:u,columnOffset:T,file_path_checksum:O,file_checksum:D,functionIds:F,sourceCodeHash:L,moduleBase:P}=e;if(v.worker_logger.debug("Parsing code",{filename:n}),o)try{if(!k){const e=(0,_.myRequire)("ts-node");k=e.create({...o,transpileOnly:!0,typeCheck:!1})}const e=function(e,t,r){try{return r.compile(e,t)}catch(e){return void v.worker_logger.warn("ts file pass, but failed to compile with ts-node",{filename:t,error:e instanceof Error?e.message:void 0,stack:e instanceof Error?e.stack:void 0})}}(t,n,k);if(!e)return{declarations:[],blacklist:{file_path_checksum:O,file_checksum:D,uuids:F}};t=e}catch(e){return v.worker_logger.error("Failed to require and compile ts file",{filename:n,error:e instanceof Error?e.message:void 0,stack:e instanceof Error?e.stack:void 0}),{declarations:[],blacklist:{file_path_checksum:O,file_checksum:D,uuids:F}}}else if(n.endsWith(".ts")||n.endsWith(".mts"))return v.worker_logger.error("ts file pass, but not found ts-options"),{declarations:[],blacklist:{file_path_checksum:O,file_checksum:D,uuids:F}};const U=(0,g.default)(t).readUInt32BE();if(U!==D)return v.worker_logger.warn("File checksum mismatch",{filename:n,file_path_checksum:O,diskFileChecksum:U,file_checksum:D,functionIds:F}),{declarations:[],blacklist:{file_path_checksum:O,file_checksum:D,uuids:F}};const H=u?null:(0,y.getSourceMap)(n,t);let N,j;try{null!==H&&(j=(0,g.default)(H).readUInt32BE(),m.hudConfig.userConfig.disableSourceMapsResolution?.value||(N=JSON.parse(H)))}catch(e){v.worker_logger.error("Failed to parse source map",{filename:n,error:e instanceof Error?e.message:void 0,stack:e instanceof Error?e.stack:void 0})}const A=x(N?await new c.SourceMapConsumer(M(N)):void 0,u,T);v.worker_logger.debug("Parsing code",{filename:n});const R=[],B=await a.parseAsync(t,I);if(null===B)return v.worker_logger.warn("Failed parsing code to tree",{filename:n,file_path_checksum:O,diskFileChecksum:U,file_checksum:D,functionIds:F}),{declarations:[],blacklist:{file_path_checksum:O,file_checksum:D,uuids:F}};v.worker_logger.debug("Parsed code to tree",{filename:n});const K=[{type:l.EntityType.Program,symbol:{sourcemap_location_hints:[]},context:{},childrenCount:{},siblingIndex:0}],$=new Set;v.worker_logger.debug("Traversing declarations",{filename:n}),r?.postMessage("eventlooptime"),a.traverse(B,{[w.NamespaceScopeAlias]:{enter(e){const{node:r}=e;if(!(0,w.isNamespaceScopeable)(r))return;const o=K[K.length-1];let i=(0,S.getScope)(e);if(!i)return;i=(0,C.resolveScopeSymbols)(A,i);const s=o.childrenCount[i.type]||0,a={...i,childrenCount:{},siblingIndex:s};if(o.childrenCount[i.type]=s+1,K.push(a),$.add(r),e.isFunction()){const r=function(e,t,r,o,n,i,s){try{const l=e;let u=e.node.body.loc?.start?.index;if(void 0===u)throw new Error("Function node has no block start location");if(void 0===e.node.start||null===e.node.start||void 0===e.node.end||null===e.node.end)throw new Error("Function node has no start or end location");"ArrowFunctionExpression"===l.node.type&&l.node.body.extra?.parenthesized&&l.node.body.extra?.parenStart&&Number.isInteger(l.node.body.extra.parenStart)&&(u=l.node.body.extra.parenStart);const c=function(e,t,r,o){const n=o.slice(0,r),i=`${e}_${t}_${Buffer.byteLength(n,"utf8")}`;return(0,h.v5)(i,m.hudConfig.functionUuidNamespace).toString()}(t,r,u-(n-1),i),y=(a=i.slice(e.node.start,e.node.end),(0,g.default)(a).readUInt32BE().toString());if(!y)return void v.worker_logger.warn("Function hash not found",{functionID:c,filename:r});const _=l.node.async||!1,S=(0,C.getNodeLocation)(l.node,s),w=S.start.source??r,I=(0,b.getEntityType)(l),M=(0,d.getMethodKind)(l.node),x=(0,d.getContextualData)(l);x.symbol&&(x.symbol=(0,C.resolveSymbol)(s,x.symbol)),x.callback?.callee.symbol&&(x.callback.callee.symbol=(0,C.resolveSymbol)(s,x.callback.callee.symbol));const k=(0,E.getParameterInfo)(l,s),{siblingIndex:T,childrenCount:O}=o[o.length-1],D=o.slice(0,-1),F=(0,d.getFunctionIdentifier)(l),L=(0,C.resolveSymbol)(s,{name:F?.name,sourcemap_location_hints:F?(0,C.getLocationList)(F,F.name):(0,C.getLocationList)(l.node,void 0),format:F?"%s":void 0});return{module:p.default.parse(w).name,symbol:L,context:x,file:w,type:I,format:f.Format.cjs,parameters:k,async:_,start_line:S.start.line,end_line:S.end.line,start_column:S.start.column,source_code_hash:y,runtime_function_id:c,scope_chain:D,declarations_count:0,methodKind:M,siblingIndex:T,childrenCount:O,original_location:{file:r,start_line:e.node.loc?.start?.line,end_line:e.node.loc?.end?.line,start_column:e.node.loc?.start?.column,end_column:e.node.loc?.end?.column}}}catch(e){v.worker_logger.error("Failed to handle function",{filename:r,error:e instanceof Error?e.message:void 0,stack:e instanceof Error?e.stack:void 0})}var a}(e,L,n,K,P,t,A);r&&R.push(r)}},exit(e){$.has(e.node)&&(K.pop(),$.delete(e.node))}}}),v.worker_logger.debug("Traversed declarations",{filename:n});const q=new Set(R.map((e=>e.runtime_function_id))),z=[],W=[];R.forEach((e=>{q.has(e.runtime_function_id)?z.push({...e,declarations_count:R.length,bundler_build_id:i,was_bundler_build_id_generated:s,has_input_map:void 0!==N,sourcemap_crc:j,file_path_checksum:O,file_checksum:D}):W.push(e)})),W.length>0&&v.worker_logger.warn("Function IDs mismatch, missing instrumentation",{filename:n,runtimeFunctionIds:F,missingInstrumentation:W}),new Set(F).forEach((e=>{q.has(e)&&q.delete(e)}));const V=q.size>0;return V&&v.worker_logger.error("Function IDs mismatch, missing declerations",{filename:n,missingRuntimeFunctionIds:[...q]}),{declarations:z,blacklist:V?{file_path_checksum:O,file_checksum:D,uuids:[...q]}:void 0}}},6928:e=>{e.exports=require("path")},6982:e=>{e.exports=require("crypto")},7064:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getEntityIdentity=t.getEntityType=void 0;const o=r(6346),n=r(8528),i=r(3073);t.getEntityType=function(e){const{node:t}=e;return o.types.isFunctionDeclaration(t)?n.EntityType.FunctionDeclaration:o.types.isFunctionExpression(t)?n.EntityType.FunctionExpression:o.types.isArrowFunctionExpression(t)?n.EntityType.FunctionArrow:o.types.isObjectMethod(t)?n.EntityType.ObjectMethod:o.types.isStaticBlock(t)||o.types.isClassMethod(t)?n.EntityType.ClassMethod:o.types.isClassPrivateMethod(t)?n.EntityType.ClassPrivateMethod:o.types.isClassDeclaration(t)?n.EntityType.ClassDeclaration:o.types.isClassExpression(t)?n.EntityType.ClassExpression:o.types.isForInStatement(t)||o.types.isForOfStatement(t)||o.types.isForStatement(t)?n.EntityType.ForLoop:o.types.isBlockStatement(t)?function(e){const t=e.parentPath.node;if(!(o.types.isFunctionDeclaration(t)||o.types.isFunctionExpression(t)||o.types.isArrowFunctionExpression(t)||o.types.isClassMethod(t)||o.types.isObjectMethod(t)||o.types.isClassPrivateMethod(t)))if(o.types.isIfStatement(t)){if("consequent"===e.parentKey)return n.EntityType.IfConsequent;if("alternate"===e.parentKey)return n.EntityType.IfAlternate;if("test"===e.parentKey)return n.EntityType.IfTest}else{if(o.types.isBlockStatement(t)||o.types.isProgram(t))return n.EntityType.Block;if(o.types.isTryStatement(t)){if("block"===e.parentKey)return n.EntityType.Try;if("finalizer"===e.parentKey)return n.EntityType.Finally}else{if(o.types.isCatchClause(t))return;if(o.types.isWhileStatement(t))return"test"===e.parentKey?n.EntityType.WhileTest:n.EntityType.Do;if(o.types.isDoWhileStatement(t))return"test"===e.parentKey?n.EntityType.WhileTest:n.EntityType.Do;if(!(o.types.isForStatement(t)||o.types.isForInStatement(t)||o.types.isForOfStatement(t)))return;if("test"===e.parentKey)return n.EntityType.ForTest;if("body"===e.parentKey)return n.EntityType.ForBlock}}}(e):o.types.isProgram(t)?n.EntityType.Program:o.types.isDoWhileStatement(t)?n.EntityType.DoWhile:o.types.isWhileStatement(t)?n.EntityType.While:o.types.isCatchClause(t)?n.EntityType.Catch:o.types.isObjectExpression(t)?n.EntityType.ObjectExpression:o.types.isWithStatement(t)?n.EntityType.With:o.types.isSwitchStatement(t)?n.EntityType.Switch:o.types.isSwitchCase(t)?n.EntityType.SwitchCase:o.types.isTryStatement(t)?n.EntityType.TryCatch:o.types.isIfStatement(t)?n.EntityType.If:n.EntityType.Other},t.getEntityIdentity=function(e){return o.types.isFunctionDeclaration(e)?o.types.isIdentifier(e.id)?e.id:void i.worker_logger.info("Function declaration without an identifier"):o.types.isClassDeclaration(e)?o.types.isIdentifier(e.id)?e.id:void i.worker_logger.info("Class declaration without an identifier"):o.types.isFunctionExpression(e)||o.types.isClassExpression(e)?o.types.isIdentifier(e.id)?e.id:void 0:o.types.isClassMethod(e)?o.types.isIdentifier(e.key)?e.key:void i.worker_logger.info("Class method without an identifier"):o.types.isObjectMethod(e)?o.types.isIdentifier(e.key)?e.key:void i.worker_logger.info("Object method without an identifier"):o.types.isClassPrivateMethod(e)?o.types.isIdentifier(e.key.id)?e.key.id:void i.worker_logger.info("Class private method without an identifier"):void 0}},7087:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getScope=void 0;const o=r(7064),n=r(1974),i=r(1622);t.getScope=function(e){const t=(0,o.getEntityType)(e);if(t){const r=(0,o.getEntityIdentity)(e.node),s=r?.name;return{type:t,context:(0,i.getContextualData)(e),symbol:{name:s,sourcemap_location_hints:r?(0,n.getLocationList)(r,s):(0,n.getLocationList)(e.node,void 0),format:r?"%s":void 0},methodKind:(0,i.getMethodKind)(e.node)}}}},7582:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.nextLoopDummy=void 0;const r=`http://${process.env.AWS_LAMBDA_RUNTIME_API}/2020-01-01/extension`;async function o(e){return await fetch(`${r}/event/next`,{method:"get",headers:{"Content-Type":"application/json","Lambda-Extension-Identifier":e}})}t.nextLoopDummy=async function(e){for(;;)try{(await o(e)).ok||await new Promise((e=>setTimeout(e,50)))}catch(e){await new Promise((e=>setTimeout(e,50)))}}},8066:(e,t)=>{let r;Object.defineProperty(t,"__esModule",{value:!0}),t.myRequire=void 0;try{r=require}catch(e){r=void 0}t.myRequire=r},8138:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getNetworkError=t.UserErrorLogs=t.setFirstError=t.getFirstError=t.isAbortError=t.HudFailExtractSqsQueueName=t.HudNoCallbackInSqsConsumerOn=t.HudNoEventTypeInSqsConsumerOn=t.HudNoQueueUrlInSqsConsumer=t.HudSqsError=t.HudExtensionNextFailedError=t.HudExtensionRegisterError=t.HudExtnensionError=t.HudBadLoggerError=t.HudInitNetworkError=t.HudTsNodeNotFoundButUsed=t.HudSessionThrottle=t.HudNoTranspileOnlyError=t.HudClientExceededMaxRetries=t.HudClientUnauthorizedError=t.HudTimeoutError=t.HudWorkloadCollectorError=t.HudAssert=t.HudUnsupportedError=t.HudEditError=t.HudWorkerError=t.HudClientError=t.HudInitError=t.HudError=void 0;const o=r(1012);class n extends Error{code=9e3;name=this.constructor.name;constructor(e){super(e)}}t.HudError=n;class i extends n{code=9001}t.HudInitError=i,t.HudClientError=class extends n{code=9002;originalAxiosErrorCode;constructor(e,t){super(e),this.originalAxiosErrorCode=t}},t.HudWorkerError=class extends n{code=9003};class s extends n{code=9004}t.HudEditError=s,t.HudUnsupportedError=class extends s{code=9005},t.HudAssert=class extends s{code=9006},t.HudWorkloadCollectorError=class extends n{code=9007},t.HudTimeoutError=class extends n{code=9008},t.HudClientUnauthorizedError=class extends n{code=9009},t.HudClientExceededMaxRetries=class extends n{code=9010},t.HudNoTranspileOnlyError=class extends n{code=9011},t.HudSessionThrottle=class extends i{code=9012},t.HudTsNodeNotFoundButUsed=class extends n{code=9013},t.HudInitNetworkError=class extends n{code=9014;originalAxiosErrorCode;constructor(e,t){super(e),this.originalAxiosErrorCode=t}},t.HudBadLoggerError=class extends n{code=9101};class a extends n{code=9200}t.HudExtnensionError=a,t.HudExtensionRegisterError=class extends a{code=9201},t.HudExtensionNextFailedError=class extends a{code=9202};class l extends n{code=9250}t.HudSqsError=l,t.HudNoQueueUrlInSqsConsumer=class extends l{code=9251},t.HudNoEventTypeInSqsConsumerOn=class extends l{code=9252},t.HudNoCallbackInSqsConsumerOn=class extends l{code=9253},t.HudFailExtractSqsQueueName=class extends l{code=9254},t.isAbortError=function(e){return e instanceof Error&&"AbortError"===e.name};let u=9999;t.getFirstError=function(){return u},t.setFirstError=function(e){e&&9999===u&&(u=e)},t.UserErrorLogs={HudServiceNotSet:()=>({level:"error",errCode:"E1001",moreInfo:!0,message:"Can't load Hud, HUD_SERVICE was not set. Please set service name using the environment variable HUD_SERVICE."}),HudServiceInvalid:()=>({level:"error",errCode:"E1002",moreInfo:!0,message:"Can't load Hud, HUD_SERVICE value has invalid service name. Please set service name using the environment variable HUD_SERVICE."}),HudApiKeyNotSet:()=>({level:"error",errCode:"E1004",moreInfo:!0,message:"Can't load Hud, HUD_KEY was not set. Please set API key using the environment variable HUD_KEY."}),HudApiKeyInvalid:()=>({level:"error",errCode:"E1005",moreInfo:!0,message:"Can't load Hud, HUD_KEY value has invalid API key. Please set a valid key in environment variable HUD_KEY."}),BothApiKeyAndServiceNotSet:()=>({level:"error",errCode:"E1007",moreInfo:!0,message:"Can't load Hud, HUD_KEY and HUD_SERVICE were not set. Please set API key using the environment variable HUD_KEY and service name using the environment variable HUD_SERVICE."}),InvalidTag:()=>({level:"warn",errCode:"E1008",moreInfo:!0,message:"HUD_TAGS should be of type Key-Value Object, defaulting to empty tags. Please set valid tags in environment variable HUD_TAGS."}),TagWithDots:()=>({level:"warn",errCode:"E1009",moreInfo:!0,message:"HUD_TAGS keys can't contain dots; they have been replaced with underscores."}),TagsInvalidJson:()=>({level:"warn",errCode:"E1010",moreInfo:!0,message:"Can't load Hud, HUD_TAGS is not a valid JSON, defaulting to empty tags. Please set valid tags in environment variable HUD_TAGS."}),ApiKeyDenied:e=>({level:"error",errCode:"E1011",moreInfo:!0,message:`Can't load Hud, the provided key is invalid. Please provide a valid HUD_KEY in your ${{ENV:"environment variable",CONFIG_FILE:"file",CONFIG_ENV:"HUD_CONFIG",INIT:"init function",SETUP:"setup function"}[e]}.`}),ShutdownGracefully:e=>({level:"error",errCode:`E${e}`,message:"SDK has initiated a graceful shutdown. Your application remains unaffected"}),UnsupportedNodeVersion:()=>({level:"error",errCode:"E1012",moreInfo:!0,message:"Can't load Hud due to an unsupported node version."}),UnsupportedSyntax:()=>({level:"error",errCode:"E1014",moreInfo:!0,message:"Can't load Hud due to an unsupported syntax version."}),UnsupportedLambdaMemory:()=>({level:"error",errCode:"E1015",moreInfo:!0,message:`Can't load Hud as lambda function memory size is less than ${o.hudConfig.lambdaMinimunMemory}MB.`}),JSONErrorInUserConfig:(e,t)=>({level:"error",errCode:"E1016",moreInfo:!0,message:`Can't load Hud, the config file contains an invalid JSON. Please set a valid json in Hud's config ${e}`+(t?`, Error: ${t}.`:".")}),ZodErrorInUserConfig:(e,t)=>({level:"error",errCode:"E1017",moreInfo:!0,message:`Can't load Hud, the config file contains an invalid value for field: ${t}. Please set a valid value for ${t} in the config ${e}.`}),ConfigInaccessible:e=>({level:"error",errCode:"E1018",moreInfo:!0,message:`Can't load Hud, the config file is inaccessible. Please make sure your node application has read permissions to the Hud config file, ${e}.`}),SetupCalledWithoutKey:()=>({level:"error",errCode:"E1019",moreInfo:!0,message:"API key not found or invalid. SDK has initiated a graceful shutdown. Your application remains unaffected."}),SetupCalledWithoutService:()=>({level:"error",errCode:"E1020",moreInfo:!0,message:"Service name parameter not found or invalid. SDK has initiated a graceful shutdown. Your application remains unaffected."}),HudEnableIsFalse:()=>({level:"warn",errCode:"E1021",moreInfo:!0,message:"HUD_ENABLE is set to false. SDK has initiated a graceful shutdown. Your application remains unaffected."}),InstrumentedFunctionCountExceeded:e=>({level:"error",errCode:"E1022",moreInfo:!0,message:`SDK limit of ${e} instrumented functions exceeded. SDK has initiated a graceful shutdown. Your application remains unaffected.`}),PodMemoryLimitTooLow:e=>({level:"error",errCode:"E1023",moreInfo:!0,message:`Insufficient memory available. Minimum required:(${e}MB). SDK has initiated a graceful shutdown. Your application remains unaffected.`}),DebuggerAttached:()=>({level:"error",errCode:"E1024",message:"Did not load as debugger is attached."}),InitSessionBeforeRegister:()=>({level:"error",errCode:"E1025",moreInfo:!0,message:"register() was not called, or called after initSession() - please call register() before initSession() and run again. Your application continues normally without Hud."}),RegisterMisplacedNoDeclarations:()=>({level:"warn",errCode:"E1026",moreInfo:!0,message:"Warning - No code has been mapped so far. This probably means register() was called too late — after your code was already loaded. Move it to the top of your entry file to enable proper mapping. Your application continues normally without Hud data."}),UnsupportedFrameworkVersion:e=>({level:"warn",errCode:"E1029",message:`Warning - Unsupported version of ${e} framework(s). This means Hud won't track your framework invocations. Your application continues normally, but with partial Hud data. See the compatibility matrix for details: https://docs.hud.io/docs/hud-sdk-compatibility-matrix-for-node#/`}),UninstrumentedFilesLogThresholdExceeded:e=>({level:"warn",errCode:"E1027",message:`Warning - ${e} of your code files were imported before register(). This means Hud won't track all of your functions. Please move register() call to an earlier location. To view the list of files use register({verbose: true}). Your application continues normally, but with partial Hud data.`,moreInfo:!0}),UninstrumentedFrameworks:e=>({level:"warn",errCode:"E1028",message:`Warning - The framework(s): ${e.map((e=>`"${e}"`)).join(", ")} was imported before register(). This means Hud won't track your framework invocations. Please move register() call to an earlier location. Your application continues normally, but with partial Hud data.`}),YesDeclarationsNoMetrics:()=>({level:"warn",errCode:"E1032",moreInfo:!0,message:"Warning - Code mapped successfully, but no function activity was tracked. Make sure your service is running and actively handling requests."}),HudEnableNotSet:e=>({level:"error",moreInfo:!0,message:`Did not load as HUD_ENABLE is ${void 0===e?"undefined":"set to a non-true value"}. Please set HUD_ENABLE=true to run Hud.`}),LambdaNotViaLayer:()=>({level:"error",errCode:"E1034",message:"Can't load Hud, lambda support is currently in beta. Contact Hud to get early access."}),RunningInBun:()=>({level:"error",errCode:"E1035",message:"Hud does not support Bun yet. The SDK has initiated a graceful shutdown. Your application remains unaffected. See the compatibility matrix for details: https://docs.hud.io/docs/hud-sdk-compatibility-matrix-for-node"}),RunningOnWindows:()=>({level:"error",errCode:"E1036",message:"Hud does not support Windows yet. The SDK has initiated a graceful shutdown. Your application remains unaffected. See the compatibility matrix for details: https://docs.hud.io/docs/hud-sdk-compatibility-matrix-for-node"}),UnsupportedNativeBuild:()=>({level:"error",errCode:"E1037",message:"Hud does not support this platform yet. The SDK has initiated a graceful shutdown. Your application remains unaffected. See the compatibility matrix for details: https://docs.hud.io/docs/hud-sdk-compatibility-matrix-for-node"}),TsNodeNotTranspileOnly:()=>({level:"error",errCode:"E1038",message:"detected ts-node is used without the transpileOnly flag, which is not supported yet. SDK has initiated a graceful shutdown. Your application remains unaffected.",moreInfo:!0}),TsNodeNotFoundEvenThoughRunWithTsNode:()=>({level:"error",errCode:"E1039",message:"'ts-node' was detected but could not be resolved by Hud. This may happen if 'ts-node' is installed globally. Try installing it locally in your project. The SDK has initiated a graceful shutdown. Your application remains unaffected.",moreInfo:!0}),InitFailedDueGenericNetworkError:()=>({level:"error",moreInfo:!0,errCode:"E1040",message:"A network error occurred during SDK initialization. Please check your internet connection and try again. SDK has initiated a graceful shutdown. Your application remains unaffected."}),InitFailedDueNetworkTimeout:()=>({level:"error",moreInfo:!0,errCode:"E1041",message:"The SDK failed to connect to Hud's backend due to a timeout during SDK initialization. Please verify your firewall settings to ensure outbound connections are allowed. SDK has initiated a graceful shutdown. Your application remains unaffected."}),InitFailedDueNetworkRST:()=>({level:"error",moreInfo:!0,errCode:"E1042",message:"The SDK connection to Hud's backend was reset unexpectedly (RST) during SDK initialization. Please check your firewall or network security settings. SDK has initiated a graceful shutdown. Your application remains unaffected."}),InitFailedDueSelfSignedCert:()=>({level:"error",moreInfo:!0,errCode:"E1043",message:"SSL certificate verification failed during SDK initialization. If your organization uses a self-signed certificate, set the NODE_EXTRA_CA_CERTS environment variable to the path of your CA certificate file. SDK has initiated a graceful shutdown. Your application remains unaffected."}),InitFailedDueDnsFailed:()=>({level:"error",moreInfo:!0,errCode:"E1044",message:"The SDK failed to resolve DNS when attempting to connect to Hud's backend during SDK initialization. If the problem persists, please contact support. SDK has initiated a graceful shutdown. Your application remains unaffected."}),InitFailedDueBackendError:()=>({level:"error",moreInfo:!0,errCode:"E1045",message:"Hud: The SDK was unable to complete initialization due to a temporary issue with Hud’s backend. SDK has initiated a graceful shutdown. Your application remains unaffected."}),InitTimeout:e=>({moreInfo:!0,level:"error",message:`SDK imported but not initialized. Please ensure to call '${e?"hud.initSession(KEY, SERVICE)":"hud.init()"}' to initialize the SDK.`}),RehookCalledBeforeRegister:()=>({level:"error",errCode:"E1046",moreInfo:!0,message:"register() was not called, or called after rehook() - please call register() before rehook() and run again. Your application continues normally with partial hud data."}),EsbuildMissingKey:()=>({level:"error",errCode:"ES0001",moreInfo:!0,message:"missing HUD_KEY, skipping Hud plugin, your build is unaffected."}),EsbuildFailedProcessingFile:e=>({level:"error",errCode:"ES0002",moreInfo:!0,message:`failed processing file "${e}", reverting to original loader.`}),EsbuildFailedBundling:()=>({level:"error",errCode:"ES0003",moreInfo:!0,message:"encountered unexpected file bundling, build aborted."}),EsbuildFailedParsingSourcemap:()=>({level:"error",errCode:"ES0004",moreInfo:!0,message:"failed parsing source maps, skipping upload, Hud will run without source maps."}),EsbuildFailedUploadingSourcemap:e=>({level:"error",errCode:"ES0005",moreInfo:!0,message:`failed uploading source map: ${e}, Hud will run without source maps.`}),EsbuildFailedUploadingSourcemapUnauthorized:()=>({level:"error",errCode:"ES0006",moreInfo:!0,message:"failed uploading source map: unauthorized, Hud will run without source maps."}),EsbuildUnsupportedPlatform:()=>({level:"error",errCode:"ES0007",message:'Can\'t load Hud, as our esbuild plugin supports "node" mode only. Your app remains unaffected. For more information visit docs.hud.io/docs/support-matrix'})},t.getNetworkError=function(e){return{ECONNABORTED:t.UserErrorLogs.InitFailedDueNetworkTimeout(),ECONNREFUSED:t.UserErrorLogs.InitFailedDueNetworkRST(),ENOTFOUND:t.UserErrorLogs.InitFailedDueDnsFailed(),SELF_SIGNED_CERT_IN_CHAIN:t.UserErrorLogs.InitFailedDueSelfSignedCert(),ERR_BAD_RESPONSE:t.UserErrorLogs.InitFailedDueBackendError()}[e]??t.UserErrorLogs.InitFailedDueGenericNetworkError()}},8269:e=>{e.exports=require("./globalstate")},8287:function(e,t,r){var o=this&&this.__createBinding||(Object.create?function(e,t,r,o){void 0===o&&(o=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,o,n)}:function(e,t,r,o){void 0===o&&(o=r),e[o]=t[r]}),n=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||o(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),n(r(6827),t)},8528:e=>{e.exports=require("./dto")},8808:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.generateSqsFlowId=t.generateKafkaFlowId=t.generateGraphqlFlowId=t.generateEndpointFlowId=void 0;const o=r(3903),n="fa79d8b7-069c-4bbf-9c00-34bfc8b3a5a6";t.generateEndpointFlowId=function(e,t){return(0,o.v5)(`${e.toString()}|${Array.from(t).sort().join(",")}`,n)},t.generateGraphqlFlowId=function(e,t){return(0,o.v5)(`${e}|${t}`,n)},t.generateKafkaFlowId=function(e,t,r){return(0,o.v5)(`${e.toString()}|${t}|${r}`,n)},t.generateSqsFlowId=function(e,t,r=""){const i=`${e}|${t}|${r}`;return(0,o.v5)(i,n)}},8809:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SDK_MODULE_NAME=void 0,t.SDK_MODULE_NAME="hud-sdk"},9023:e=>{e.exports=require("util")},9100:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.updateInvestigationRateLimitGlobals=t.hudConfig=t.isValidParam=t.getModulesToTraceFromEnv=t.HudDynamicConfigSchema=void 0;const o=r(1569);t.HudDynamicConfigSchema=o.z.object({aggregationInterval:o.z.number(),flowMetricInterval:o.z.number(),graphqlInterval:o.z.number(),aggregationFirstSendTimeout:o.z.number(),flowMetricFirstSendTimeout:o.z.number(),enableInvestigation:o.z.boolean(),investigationRateLimits:o.z.object({maxSameInvestigations:o.z.number().int().positive(),sameInvestigationTimeWindowMs:o.z.number().int().positive(),maxTotalInvestigations:o.z.number().int().positive(),totalInvestigationTimeWindowMs:o.z.number().int().positive()})}),t.getModulesToTraceFromEnv=function(){const e=process.env.HUD_MONITOR_MODULES||process.env.HUD_INCLUDE_MODULES;if(e)return e.split(",")},t.isValidParam=function(e){return null!=e&&""!==e&&"string"==typeof e};const n=process.env.HUD_ENABLE_INVESTIGATION,i=process.env.HUD_HOST||"https://api-prod.hud.io",s=process.env.HUD_LOG_DIR,a="_HUD",l=process.env.HUD_LOG_TO_FILE,u={sink:{url:i,timeout:5e3,session_attr:"X-Session-ID"},endpoints:{init:"sink/init",send:"sink/send",batch:"sink/batch",logs:"sink/logs",fatalError:"sink/redline",getMode:"sink/getMode",getRemoteConfig:"sink/remote-config/get",fileDeclarations:"sink/file-declarations",sourceMap:"sink/sourcemap",storeObject:"sink/objects/store"},logger:{default:{levels:{app:"warn",worker:"warn",instrument:"warn"}},debug:{levels:{app:"debug",worker:"debug",instrument:"debug"}}},investigation:{objectVersion:"1.0.0",store:{type:"s3"},limits:{executionFlowMaxLength:100,exceptionMaxLength:100},blacklistParams:["password","passwd","pwd","secret","token","apiKey","accessKey","auth","authorization","credentials","jwt","sessionId","sessionToken","clientSecret","oauth","oauthToken","ssoToken","api_secret","api_secret_key","ssn","sin","passport","passportNumber","driverLicense","dlNumber","user_id","userid","email","emailAddress","phone","phoneNumber","address","homeAddress","dob","birthDate","dateOfBirth","creditCard","credit_card","ccn","cardNumber","cvv","cvc","iban","bic","swift","bankAccount","bank_account","fingerprint","faceId","voicePrint","medicalRecord","healthId","authToken","auth_code","authCode","pin","userPin","user_secret"],censorshipRegexes:[{regex:/\b[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+\b/g,replacement:"[REDACTED-EMAIL]"},{regex:/[\b+][+]?[(]?[0-9]{3}[)]?[-\s.]?[0-9]{3}[-\s.]?[0-9]{4,6}\b/g,replacement:"[REDACTED-PHONE-NUMBER]"},{regex:/\b(?:\d{1,3}\.){3}\d{1,3}\b/g,replacement:"[REDACTED-IP]"},{regex:/\b[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\b/g,replacement:"[REDACTED-JWT]"},{regex:/\b(?:\d[ -]*?){13,16}\b/g,replacement:"[REDACTED-CREDIT-CARD]"}],maxStringLength:1024,maxArrayLength:100,maxObjectDepth:10},userConfig:{minPodMemoryMB:{value:250,source:"DEFAULT"},maxMappedFunctions:{value:5e4,source:"DEFAULT"},maxFileSizeBytes:{value:2831155,source:"DEFAULT"},maxTimeUntilInitSessionMs:{value:3e4,source:"DEFAULT"},includeModules:{value:[],source:"DEFAULT"}},loggerWorkerPortSizeLimit:1e4,customerLoggerLevel:"info",logDirectory:s,invocationSampling:new Map([[[300n,null],100],[[200n,300n],50],[[100n,200n],25],[[0n,100n],10]]),callerResetInterval:36e5,modeInterval:3e5,logsSendInterval:6e4,logPerfInterval:3e5,endpointsInterval:18e5,endpointsFirstSendWaitTime:12e4,huddBinWidth:1.2,workerGrace:6e4,workerTimeout:2e4,timeoutOnRegister:6e4,timeoutOnMetrics:6e4,workerMessageTimeout:1e4,communicationBatchSize:100,writePatched:!1,defaultOff:!0,disableOnBadApiKey:!0,disableOnBadServiceName:!0,cpuTimeCollection:!1,workloadMetadata:{sendInterval:3e5,aws:{imds:{baseURL:"http://169.254.169.254/latest",tokenURI:"/api/token",identityURI:"/dynamic/instance-identity/document",lifeCycleURI:"/meta-data/instance-life-cycle",requestTimeout:5e3},metadataFile:"/run/cloud-init/instance-data.json"},kubernetes:{namespaceFile:"/var/run/secrets/kubernetes.io/serviceaccount/namespace",uuidFile:"/sys/class/dmi/id/product_uuid",podMemoryLimitFile:"/sys/fs/cgroup/memory/memory.stat",podCPULimitFile:"/sys/fs/cgroup/cpuacct/cpu.shares"}},deleteLogsAfterSending:!0,supportSourceMap:!0,editInline:!0,bundlerBuildIdVarName:"hudFileBuildID",bundlerBuildUuidNamespace:"00c1e90b-af75-4d8e-9935-68485877f759",functionUuidNamespace:"94a210f3-861c-4e18-ab27-6b6c19437c9d",wrapVarPrefix:a,functionIdVarName:`${a}_fid`,frameworksToPatch:new Map([["express",{version:"<=5",patcher:"express",enableEsbuild:!0}],["express/lib/application.js",{version:"<=5",patcher:"expressApplication",enableEsbuild:!0}],["router",{version:"^2.0.0",patcher:"router",enableEsbuild:!0}],["koa",{version:"^2.0.0",patcher:"koa"}],["graphql/execution/execute",{version:"14 - 16",patcher:"graphql"}],["http",{version:"*",patcher:"http"}],["https",{version:"*",patcher:"http"}],["@nestjs/core/interceptors/interceptors-consumer",{version:"*",patcher:"nestjsInterceptor"}],["@nestjs/core/router/router-execution-context",{version:"*",patcher:"nestjsRouterExecutionContext"}],["@nestjs/microservices/context/rpc-context-creator",{version:">=7.0.0",patcher:"nestjsRpcContextCreator"}],["kafkajs",{version:">=1.4.0",patcher:"kafkajs"}],["@codegenie/serverless-express/src/frameworks/express.js",{version:"^4.1.0",patcher:"codeGenieServerlessExpress",enableEsbuild:!0}],["@codegenie/serverless-express",{enableEsbuild:!0}],["sqs-consumer",{version:"*",patcher:"sqsConsumer",extraInfo:{mondayVersion:">=6.1.0",bbcVersion:">=7.5.0"}}],["serverless-http",{enableEsbuild:!0}],["serverless-http/lib/framework/get-framework.js",{version:"^2.7.0",patcher:"serverlessHttp",enableEsbuild:!0}]]),communicationKeepalive:!1,communicationKeepaliveGrace:5e3,express:{routeNamesSymbol:Symbol.for("hudRoutes"),layerStateSymbol:Symbol.for("hudState"),markedSymbol:Symbol.for("hudMarked"),wrapAllCallbacks:!0},supportedNodeVersions:["18","20","21","22","24"],hudPatchedName:"hudPatched",metricSymbol:Symbol.for("hudMetric"),dynamicConfig:{aggregationInterval:3e5,flowMetricInterval:3e5,graphqlInterval:3e4,aggregationFirstSendTimeout:3e4,flowMetricFirstSendTimeout:3e4,enableInvestigation:"true"===n,investigationRateLimits:{maxSameInvestigations:2,sameInvestigationTimeWindowMs:36e5,maxTotalInvestigations:25,totalInvestigationTimeWindowMs:216e5}},isInvestigationEnabledByEnv:void 0!==n,suppressTraces:!0,lambdaMinimunMemory:1024,lambdaBaseGivenTime:400,lambdaExtraGivenTimePerRequest:50,lambdaMaxGivenTime:700,throttleStatusCode:202,esbuildGlobalVar:"hudSGV",esbuildPluginMessagePrefix:"ESBuild plugin ",esbuildMark:"/*modifiedByHudESBuildPlugin-",esbuildMarkLength:67,esbuildUploadSourceMapTimeout:15e3,esbuildPluginLogsChunkSize:100,esbuildPluginLogsBatchSize:10,pluginsLogEndpoint:"https://yqp37dddrsewm6wdwwpwfraxqm0shdmx.lambda-url.eu-central-1.on.aws/",fileless:"true"!==l,uninstrumentedFilesLogThreshold:2,tsNodeConfigTimeout:1e4,allowedEditExtensions:[".ts",".cts",".mts",".js",".cjs",".mjs"]};t.hudConfig=function(e={}){return{...u,...e}}({logger:{default:{levels:{app:"info",worker:"info",instrument:"info"}},debug:{levels:{app:"debug",worker:"debug",instrument:"debug"}}},deleteLogsAfterSending:!1,communicationKeepalive:!0}),t.default=t.hudConfig,t.updateInvestigationRateLimitGlobals=function(){globalThis.hudMaxSameInvestigations=t.hudConfig.dynamicConfig.investigationRateLimits.maxSameInvestigations,globalThis.hudMaxTotalInvestigations=t.hudConfig.dynamicConfig.investigationRateLimits.maxTotalInvestigations,globalThis.hudSameInvestigationTimeWindowNs=BigInt(t.hudConfig.dynamicConfig.investigationRateLimits.sameInvestigationTimeWindowMs)*BigInt(1e6),globalThis.hudTotalInvestigationTimeWindowNs=BigInt(t.hudConfig.dynamicConfig.investigationRateLimits.totalInvestigationTimeWindowMs)*BigInt(1e6)}},9896:e=>{e.exports=require("fs")}},t={};function r(o){var n=t[o];if(void 0!==n)return n.exports;var i=t[o]={exports:{}};return e[o].call(i.exports,i,i.exports,r),i.exports}var o={};return(()=>{var e=o;Object.defineProperty(e,"__esModule",{value:!0}),e.rehook=e.register=e.initSession=void 0;let t=!1,n=!1;function i(){const{customer_logger:e,app_logger:t,UserErrorLogs:o}=r(2546);t.warn("No declarations found, register() was called too late"),e.log(o.RegisterMisplacedNoDeclarations())}e.initSession=async function(e,o){try{const{customer_logger:i}=r(2546),{UserErrorLogs:s}=r(2546),{clearInitGuard:a}=r(8269),{init:l}=r(2240);if(a(),!t)return void i.log(s.InitSessionBeforeRegister());if(!n)return;return e&&""!==e&&"string"==typeof e?o&&""!==o&&"string"==typeof o?await l(e,o):void i.log(s.SetupCalledWithoutService()):void i.log(s.SetupCalledWithoutKey())}catch{}},e.register=function(e){try{const{forceHudEnable:o,saveInstrumentationIndicator:s,saveHudRunningFromSetup:a}=r(8269);t=!0,o();const{updateUserConfigFromInitOptions:l,hudConfig:u,customer_logger:c,shouldRunHud:d,updateUserConfigFromFile:p}=r(2546),{registerHook:m}=r(2030),{logRegisterInRightLocation:f}=r(1256);e&&l(e,"SETUP"),p();const g=d();if(!g.shouldRun)return void(null!==g.error&&c.log(g.error));m()&&(n=!0,f(e?.verbose??!1)),s(setTimeout(i,u.timeoutOnRegister)),a()}catch{}},e.rehook=function(){const{patchCompile:e}=r(2030),{customer_logger:o,UserErrorLogs:i}=r(2546);t?n&&e():o.log(i.RehookCalledBeforeRegister())}})(),o})()));
//# sourceMappingURL=on_setup.js.map