如何通过onesdk_stub_set_variable配置Dynatrace One Agent C++变量
使用OneAgent SDK for C通过onesdk_stub_set_variable配置Dynatrace参数
直接上可复用的代码示例,这些配置必须在SDK初始化前完成:
#include "onesdk/onesdk.h" int main() { onesdk_result_t op_result; // 设置OneAgent安装目录(仅当Agent未在默认路径时需要) op_result = onesdk_stub_set_variable("dt.home", "/opt/dynatrace/oneagent"); if (op_result != ONESDK_SUCCESS) { // 可添加错误日志输出,比如打印onesdk_get_last_error()的返回值 } // 设置租户ID(从Dynatrace控制台获取) op_result = onesdk_stub_set_variable("dt.tenant", "your_tenant_id_here"); if (op_result != ONESDK_SUCCESS) { // 处理错误 } // 设置租户令牌(控制台生成的专用令牌) op_result = onesdk_stub_set_variable("dt.tenanttoken", "your_tenant_token_here"); if (op_result != ONESDK_SUCCESS) { // 处理错误 } // 设置Dynatrace服务器地址(SaaS环境格式:https://<tenant>.live.dynatrace.com) op_result = onesdk_stub_set_variable("dt.server", "https://your-dynatrace-server-url"); if (op_result != ONESDK_SUCCESS) { // 处理错误 } // 初始化SDK if (onesdk_initialize() != ONESDK_SUCCESS) { // 初始化失败处理 } // 这里编写你的代理业务逻辑,比如创建分布式追踪、监控服务调用等 // 关闭SDK onesdk_shutdown(); return 0; }
关键说明
- 所有
onesdk_stub_set_variable调用必须在onesdk_initialize()之前执行,否则配置不会生效 - 各参数细节:
dt.home:可选参数,默认情况下SDK会自动检测OneAgent路径,仅当Agent安装在非标准位置时需要指定dt.tenant:必填,你的Dynatrace环境唯一标识,可在控制台的环境设置页面找到dt.tenanttoken:必填,用于身份验证的令牌,需从Dynatrace控制台生成(需具备相应权限)dt.server:必填,Dynatrace后端服务地址,SaaS环境直接用租户对应的live.dynatrace.com域名,私有部署则填写自托管服务器地址
- 如果变量设置失败,可调用
onesdk_get_last_error()获取具体错误码,辅助排查问题
内容的提问来源于stack exchange,提问作者Sercan Noyan Germiyanoğlu
相关产品推荐
相关产品推荐

