关于 dt-js-runtime
Dynatrace JavaScript Runtime 的开发参考技能,面向在 AppEngine 沙箱中编写 JavaScript 或 TypeScript 函数的开发者。它说明入口函数约定、运行限制、可用 API 和通过 dtctl 执行函数的方法。
主要功能
- 01说明异步默认导出函数约定
- 02列出运行限制与可用模块参考
- 03介绍 fetch、凭据库和出站允许列表
- 04支持通过 dtctl 执行代码文件
- 05支持传入 JSON 参数
适用场景
- 01检查函数入口格式是否符合要求
- 02查找沙箱支持的 Web API 或 Node.js 模块
- 03使用 dtctl 测试函数而不部署应用
- 04向运行函数传递 JSON 输入
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ dynatrace/ dynatrace-for-ai --skill dt-js-runtime安装后在 Claude Code 中输入/dt-js-runtime确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/apis-and-modules.mdfetch.mdlimits-and-restrictions.mdsdk.mdreferences/sdks/app-engine-registry/appEngineRegistryAppsClient.mdappEngineRegistrySchemaManifestClient.mdREADME.mdtypes.mdreferences/sdks/app-environment/functions.mdREADME.mdtypes.mdreferences/sdks/app-settings-v1/appSettingsObjectsClient.mdREADME.mdtypes.mdreferences/sdks/app-settings-v2/appSettingsObjectsClient.mdREADME.mdtypes.mdreferences/sdks/app-utils/README.mdreferences/sdks/automation-utils/constants.mdfunctions.mdREADME.mdtypes.mdreferences/sdks/automation/actionExecutionsClient.mdactionsSampleResultClient.mdbusinessCalendarsClient.mdeventTriggersClient.mdexecutionsClient.mdREADME.mdschedulesClient.mdschedulingRulesClient.md详细介绍
Dynatrace JavaScript 运行时
Dynatrace JS 运行时是一个在服务器端运行 JavaScript/TypeScript 的 AppEngine 沙箱。
函数契约
每个入口点都必须导出一个默认异步函数:
export default async function () {
// ...
return result;
}
必须使用 ES 模块语法。支持 TypeScript(类型注解、接口、泛型)。不支持其他导出形式。
参考资料
从这里开始,然后只加载所需的文件。
| 文件 | 何时加载 |
|---|---|
| references/limits-and-restrictions.md | 超时、内存和 I/O 配额;禁止使用的内容(eval、WebSocket、套接字、文件系统) |
| references/apis-and-modules.md | 可用的 Web API 和 Node.js 兼容模块(fetch、crypto、streams、buffer,…) |
| references/fetch.md | 调用内部 /platform/... API 或外部 URL、凭据库、出站允许列表 |
| references/sdk.md | 任何 @dynatrace-sdk/* 包——索引会指引你找到对应的 SDK 文件 |
使用 dtctl 运行函数
使用 dtctl exec function 运行 JS 运行时代码,无需部署应用。
# Run inline code
dtctl exec function --code 'export default async function() { return "hello" }'
# Run from file
dtctl exec function -f script.js
# Pass JSON input — the parsed object is the function's argument
dtctl exec function -f script.js --payload '{"key":"value"}'
函数可以接受一个可选参数。--payload 会被解析并直接作为该参数传入——不会包装在 event.payload 字段中:
export default async function(payload) {
// with --payload '{"key":"value"}', payload is {"key": "value"}
return payload.key;
}
加载 dynatrace-control 技能,了解身份验证设置、上下文切换以及完整的 exec function 参考。
评论
支持 Markdown