用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/Cogni-AI-OU/cogni-ai-agent-skills --skill datadog-agent命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
基于 SOC 职业分类
正在显示 SKILL.md
| name | datadog-agent |
| description | Use when installing, configuring, or updating Datadog Agent; |
| license | MIT |
Expert-level guidance for installing, configuring, and extending the Datadog Agent, including Ansible orchestration and custom OpenMetrics checks.
AgentCheck or OpenMetricsBaseCheckV2) for the agent.datadog.dd.agent role.datadog-api instead).datadog-monitors).subprocess module inside a custom check instead of get_subprocess_output(), which deadlocks the Agent's Go-runtime.my_check.py but naming the configuration file custom_check.yaml, causing the Agent to silently ignore it.- type: file at the root of a check's YAML configuration instead of properly nesting it under a logs: key.datadog.yaml or conf.d/.datadog_api_key in playbooks; utilize vault secrets or environment variables.my_check.py) must exactly match its configuration file name (e.g., my_check.yaml).When using the datadog.dd.agent (or legacy datadog.datadog) Ansible role, ensure correct YAML hierarchy, especially for log collection.
ansible-galaxy collection install datadog.dd- type: file at the root check level.logs: key within the specific check dictionary.# Correct Ansible definition for logs attached to a custom/syslog check
datadog_checks:
syslog: # Creates /etc/datadog-agent/conf.d/syslog.d/conf.yaml
logs:
- type: file
path: /var/log/syslog
service: syslog
source: syslog
Create custom Python checks by extending AgentCheck for simple metrics or OpenMetricsBaseCheckV2 for Prometheus endpoints.
/etc/datadog-agent/checks.d//etc/datadog-agent/conf.d/<CHECK_NAME>.d/conf.yamlcustom_ (e.g., custom_postfix.py) to avoid conflicts with out-of-the-box integrations.sudo -u dd-agent -- datadog-agent check <CHECK_NAME>from datadog_checks.base import AgentCheck
class CustomCheck(AgentCheck):
def check(self, instance):
self.gauge('custom.metric', 1, tags=instance.get('tags', []))
Advanced scraping from Prometheus endpoints. Requires openmetrics_endpoint in the check config.
from datadog_checks.base import OpenMetricsBaseCheckV2, ConfigurationError
class CustomOpenMetricsCheck(OpenMetricsBaseCheckV2):
__NAMESPACE__ = "my_namespace"
def __init__(self, name, init_config, instances):
super(CustomOpenMetricsCheck, self).__init__(name, init_config, instances)
self.metrics_map = {
'prom_metric_name': 'datadog.metric.name',
}
def get_default_config(self):
return {'metrics': self.metrics_map}
def check(self, instance):
endpoint = instance.get('openmetrics_endpoint')
if not endpoint:
raise ConfigurationError("Missing 'openmetrics_endpoint'")
super().check(instance)
datadog-agent statussubprocess module due to the Agent's Go-runtime multithreading constraints. Always use get_subprocess_output() from datadog_checks.base.utils.subprocess_output.from datadog_checks.base.utils.subprocess_output import get_subprocess_output
out, err, retcode = get_subprocess_output(["ls", "."], self.log, raise_on_empty_output=True)