- 필수 기능
- 시작하기
- Glossary
- 표준 속성
- Guides
- Agent
- 통합
- 개방형텔레메트리
- 개발자
- API
- Datadog Mobile App
- CoScreen
- Cloudcraft
- 앱 내
- 서비스 관리
- 인프라스트럭처
- 애플리케이션 성능
- APM
- Continuous Profiler
- 스팬 시각화
- 데이터 스트림 모니터링
- 데이터 작업 모니터링
- 디지털 경험
- 소프트웨어 제공
- 보안
- AI Observability
- 로그 관리
- 관리
Supported OS
The Agent’s Marathon check lets you:
The Marathon check is included in the Datadog Agent package. No additional installation is needed on your server.
Follow the instructions below to configure this check for an Agent running on a host. For containerized environments, see the Containerized section.
To configure this check for an Agent running on a host:
Edit the marathon.d/conf.yaml
file, in the conf.d/
folder at the root of your Agent’s configuration directory. See the sample marathon.d/conf.yaml for all available configuration options:
init_config:
instances:
# the API endpoint of your Marathon master; required
- url: "https://<SERVER>:<PORT>"
# if your Marathon master requires ACS auth
# acs_url: https://<SERVER>:<PORT>
# the username for Marathon API or ACS token authentication
username: "<USERNAME>"
# the password for Marathon API or ACS token authentication
password: "<PASSWORD>"
The function of username
and password
depends on whether or not you configure acs_url
. If you do, the Agent uses them to request an authentication token from ACS, which it then uses to authenticate to the Marathon API. Otherwise, the Agent uses username
and password
to directly authenticate to the Marathon API.
Available for Agent versions >6.0
Collecting logs is disabled by default in the Datadog Agent, enable it in your datadog.yaml
file:
logs_enabled: true
Because Marathon uses logback, you can specify a custom log format. With Datadog, two formats are supported out of the box: the default one provided by Marathon and the Datadog recommended format. Add a file appender to your configuration as in the following example and replace $PATTERN$
with your selected format:
[%date] %-5level %message \(%logger:%thread\)%n
%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<shutdownHook class="ch.qos.logback.core.hook.DelayingShutdownHook"/>
<appender name="stdout" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>[%date] %-5level %message \(%logger:%thread\)%n</pattern>
</encoder>
</appender>
<appender name="async" class="ch.qos.logback.classic.AsyncAppender">
<appender-ref ref="stdout" />
<queueSize>1024</queueSize>
</appender>
<appender name="FILE" class="ch.qos.logback.core.FileAppender">
<file>/var/log/marathon.log</file>
<append>true</append>
<!-- set immediateFlush to false for much higher logging throughput -->
<immediateFlush>true</immediateFlush>
<encoder>
<pattern>$PATTERN$</pattern>
</encoder>
</appender>
<root level="INFO">
<appender-ref ref="async"/>
<appender-ref ref="FILE"/>
</root>
</configuration>
Add this configuration block to your marathon.d/conf.yaml
file to start collecting your Marathon logs:
logs:
- type: file
path: /var/log/marathon.log
source: marathon
service: "<SERVICE_NAME>"
For containerized environments, see the Autodiscovery Integration Templates for guidance on applying the parameters below.
Parameter | Value |
---|---|
<INTEGRATION_NAME> | marathon |
<INIT_CONFIG> | blank or {} |
<INSTANCE_CONFIG> | {"url": "https://%%host%%:%%port%%"} |
Available for Agent versions >6.0
Collecting logs is disabled by default in the Datadog Agent. To enable it, see Kubernetes Log Collection.
Parameter | Value |
---|---|
<LOG_CONFIG> | {"source": "marathon", "service": "<SERVICE_NAME>"} |
Run the Agent’s status subcommand and look for marathon
under the Checks section.
marathon.apps (gauge) | Number of applications |
marathon.backoffFactor (gauge) | Backoff time multiplication factor for each consecutive failed task launch; tagged by app_id and version |
marathon.backoffSeconds (gauge) | Task backoff period; tagged by app_id and version Shown as second |
marathon.cpus (gauge) | Configured CPUs for each instance of a given application |
marathon.deployments (gauge) | Number of running or pending deployments |
marathon.disk (gauge) | Configured CPU for each instance of a given application Shown as mebibyte |
marathon.instances (gauge) | Number of instances of a given application; tagged by app_id and version |
marathon.mem (gauge) | Configured memory for each instance of a given application; tagged by app_id and version Shown as mebibyte |
marathon.queue.count (gauge) | Number of instances left to launch Shown as task |
marathon.queue.delay (gauge) | Wait before the next launch attempt Shown as second |
marathon.queue.offers.processed (gauge) | The number of processed offers for this launch attempt Shown as task |
marathon.queue.offers.reject.last (gauge) | Summary of unused offers for all last offers Shown as task |
marathon.queue.offers.reject.launch (gauge) | Summary of unused offers for the launch attempt Shown as task |
marathon.queue.offers.unused (gauge) | The number of unused offers for this launch attempt Shown as task |
marathon.queue.size (gauge) | Number of app offer queues Shown as task |
marathon.taskRateLimit (gauge) | The task rate limit for a given application; tagged by app_id and version |
marathon.tasksHealthy (gauge) | Number of healthy tasks for a given application; tagged by app_id and version Shown as task |
marathon.tasksRunning (gauge) | Number of tasks running for a given application; tagged by app_id and version Shown as task |
marathon.tasksStaged (gauge) | Number of tasks staged for a given application; tagged by app_id and version Shown as task |
marathon.tasksUnhealthy (gauge) | Number of unhealthy tasks for a given application; tagged by app_id and version Shown as task |
The Marathon check does not include any events.
marathon.can_connect
CRITICAL if either cannot connect to API endpoint or no instances of any application are running. WARN if no applications are detected. Additional information about response status at the time of collection is included in the check message.
Statuses: ok, critical
Need help? Contact Datadog support.