MySQL monitoring with Datadog

Datadog is a monitoring service for cloud-scale applications, bringing together data from servers, databases, tools, and services to present a unified view of an entire stack. These capabilities are provided on a SaaS-based data analytics platform.


Datadog uses a Python based, open-source agent. Its backend is built using a number of open and closed source technologies including D3, Apache Cassandra, Kafka, PostgreSQL, etc.It’s possible to correlate and search the metrics and events to obtain different views which helps to pinpoint problems related to application’s or VM’s performance.


DataDog needs to deploy a lightweight agent to the system to then centralize the view to single location. The agents can be deployed almost everywhere, including VMware. tons of other OSs include the latest Linux OS like RedHat 7, CentOS 7, latest Fedora, CoreOS or Windows OSs…

The Datadog integration places an Agent on the vCenter server, and collects vSphere performance metrics in real time, as well as configuration events like vMotions and resource configuration changes.

The agent gathers events and metrics provided by vCenter and tags them based on VMware clusters and VM configuration so that you can use the exact same cluster and VM names in Datadog. The data is continuously sent through a secure connection to Datadog where it is processed and normalized to a common timescale, along with performance data from over 80 other commonly-available tools, applications and cloud-based services.

What is an Agent ?

The Datadog Agent is piece of software that runs on your hosts. Its job is to faithfully collect events and metrics and bring them to Datadog on your behalf so that you can do something useful with your monitoring and performance data.


Source code of Agent can be found here : https://github.com/DataDog/dd-agent

For information on running the Agent through a proxy please see here; for which ranges to allow, please see here.

The Agent has three main parts: the collector, dogstatsd, and the forwarder.

  • The collector runs checks on the current machine for whatever integrations you have and it will capture system metrics like memory and CPU.
  • Dogstatsd is a statsd backend server you can send custom metrics to from an application.
  • The forwarder retrieves data from both dogstatsd and the collector and then queues it up to be sent to Datadog.

 Prerequisites :

    1. Install MySQL instance on ubuntu 14.04 server’s 
    2. Setup Master-Slave replication between MySQL Instances 
    3. Machine should have internet connectivity 

Server details :

    1.  Host 1 : ubuntuserver1 ( IP: 192.168.47.187) 
    2.  Host 2 : ubuntuserver2 ( IP:192.168.47.188) 

For full video Tutorial  visit : https://www.youtube.com/watch?v=h1uqlJ9AOKc&t=12s

Step 1 : Installing Datadog Agent 

Navigate to https://app.datadoghq.com/account/ .Login with your Account ID and Password

Navigate to Integration and Click on Agent 

Under install Instructions section select the OS Version .Here it is Ubuntu 14.04 

One Step Installation :

   Check your machine time 

We have also seen a few cases where machines have their clock set further in the future or the past, which can sometimes cause problems with metric submission. To check for this, run:

date -u && curl -s -v https://app.datadoghq.com 2>&1 | grep Date

This will output the current system’s date, and then make a request to our endpoint and grab the date on our end. If these are more than a few minutes apart, you may want to look at the time settings on your server.

Copy and Paste the command in ubuntuserver1

DD_API_KEY=efb8XXXXXXXXXXXXXXXabf3ad bash -c "$(curl -L https://raw.githubusercontent.com/DataDog/dd-agent/master/packaging/datadog-agent/source/install_agent.sh)"

This will install the APT packages for the Datadog Agent and will prompt you for your password. 

If the Agent is not already installed on your machine and you don’t want it to start automatically after the installation, just prepend DD_INSTALL_ONLY=true to the above script before running it.

Step-by-step Installation

  1. Set up apt so that it can download through https:
sudo apt-get update
sudo apt-get install apt-transport-https

       2.   Set up the Datadog deb repo on your system and import Datadog’s apt key:

sudo sh -c "echo 'deb https://apt.datadoghq.com/ stable main' > /etc/apt/sources.list.d/datadog.list"
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys C7A7DA52


        3.   Update your local apt repo and install the Agent:

sudo apt-get update
sudo apt-get install datadog-agent

        4.   Copy the example config into place and plug in your API key

sudo sh -c "sed 's/api_key:.*/api_key: efb8XXXXXXXXXXXXXXXabf3ad/' /etc/dd-agent/datadog.conf.example > /etc/dd-agent/datadog.conf"


       5.  Start the Agent:

sudo /etc/init.d/datadog-agent start

Check if the Agent is running

sudo /etc/init.d/datadog-agent status
Datadog Agent (supervisor) is running all child processes

Receive information about the Agent’s state:

sudo /etc/init.d/datadog-agent info

Output :

====================
Collector (v 5.11.2)
====================

  Status date: 2017-03-19 23:56:21 (16s ago)
  Pid: 1962
  Platform: Linux-3.13.0-24-generic-x86_64-with-Ubuntu-14.04-trusty
  Python Version: 2.7.12, 64bit
  Logs: , /var/log/datadog/collector.log, syslog:/dev/log

  Clocks
  ======

    NTP offset: 0.0423 s
    System UTC time: 2017-03-19 18:26:38.616366

  Paths
  =====

    conf.d: /etc/dd-agent/conf.d
    checks.d: /opt/datadog-agent/agent/checks.d

  Hostnames
  =========

    socket-hostname: ubuntuserver1
    hostname: ubuntuserver1
    socket-fqdn: ubuntuserver1

  Checks
  ======

    ntp
    ---
      - Collected 0 metrics, 0 events & 0 service checks

    disk
    ----
      - instance #0 [OK]
      - Collected 56 metrics, 0 events & 0 service checks

    network
    -------
      - instance #0 [OK]
      - Collected 15 metrics, 0 events & 0 service checks

  Emitters
  ========

    - http_emitter [OK]

====================
Dogstatsd (v 5.11.2)
====================

  Status date: 2017-03-19 23:56:30 (9s ago)
  Pid: 1929
  Platform: Linux-3.13.0-24-generic-x86_64-with-Ubuntu-14.04-trusty
  Python Version: 2.7.12, 64bit
  Logs: , /var/log/datadog/dogstatsd.log, syslog:/dev/log

  Flush count: 466
  Packet Count: 0
  Packets per second: 0.0
  Metric count: 1
  Event count: 0
  Service check count: 0

====================
Forwarder (v 5.11.2)
====================

  Status date: 2017-03-19 23:56:36 (3s ago)
  Pid: 1928
  Platform: Linux-3.13.0-24-generic-x86_64-with-Ubuntu-14.04-trusty
  Python Version: 2.7.12, 64bit
  Logs: , /var/log/datadog/forwarder.log, syslog:/dev/log

  Queue Size: 0 bytes
  Queue Length: 0
  Flush Count: 1424
  Transactions received: 706
  Transactions flushed: 706
  Transactions rejected: 0
  API Key Status: API Key is valid


======================
Trace Agent (v 5.11.2)
======================

  Not running (port 8126)

Tracebacks for errors can be retrieved by setting the -v flag



sudo /etc/init.d/datadog-agent info -v

Step 2 : Configuration 



The configuration file for the Agent is located at /etc/dd-agent/datadog.conf

Configuration files for integrations are located in /etc/dd-agent/conf.d/


Logs for the subsystems are in the following files:


/var/log/datadog/supervisord.log 

/var/log/datadog/collector.log

/var/log/datadog/dogstatsd.log

/var/log/datadog/forwarder.log

$ cat  /etc/dd-agent/datadog.conf |grep -v ^# |grep -v ^$
[Main]
dd_url: https://app.datadoghq.com
api_key: efb8XXXXXXXXXXXXbf3ad
gce_updated_hostname: yes

Step 3 :  MySQL Integration 


a)   Navigate to https://app.datadoghq.com/account/ and select on Integrations 


select Mysql From the Integrations list .

b)   Navigate to the tab Configuration and run the following commands in Server 
1. Create a datadog user with replication rights in your MySQL server

sudo mysql -umysql -pXXXXXX -e "CREATE USER 'datadog'@'localhost' IDENTIFIED BY 'XXXXXX';"
sudo mysql -umysql -pXXXXXX -e "GRANT REPLICATION CLIENT ON *.* TO 'datadog'@'localhost' WITH MAX_USER_CONNECTIONS 5;"

If you’d like to get the full metrics catalog please also grant the following privileges:

sudo mysql -umysql -pXXXXXX -e "GRANT PROCESS ON *.* TO 'datadog'@'localhost';"
sudo mysql -umysql -pXXXXXX -e "GRANT SELECT ON performance_schema.* TO 'datadog'@'localhost';"

2. Verify the datadog user

$  mysql -u datadog --password=XXXXX -e "show status" | grep Uptime && echo -e "\033[0;32mMySQL user - OK\033[0m" || echo -e "\033[0;31mCannot connect to MySQL\033[0m"

Output :

Warning: Using a password on the command line interface can be insecure.
Uptime  7367
Uptime_since_flush_status       7367
MySQL user - OK



$  mysql -u datadog --password=XXXX -e "show slave status" && echo -e "\033[0;32mMySQL grant - OK\033[0m" || echo -e "\033[0;31mMissing REPLICATION CLIENT grant\033[0m"

Output :

Warning: Using a password on the command line interface can be insecure.
MySQL grant - OK


If you have also granted additional privileges, verify them with:



$ mysql -u datadog --password=XXXXXX -e "SELECT * FROM performance_schema.threads" && \
echo -e "\033[0;32mMySQL SELECT grant - OK\033[0m" || \
echo -e "\033[0;31mMissing SELECT grant\033[0m"


Output :

Warning: Using a password on the command line interface can be insecure.
+-----------+----------------------------------------+------------+----------------+------------------+------------------+----------------+---------------------+------------------+------------------------------------------------------------------+------------------------------------------+------------------+------+--------------+
| THREAD_ID | NAME                                   | TYPE       | PROCESSLIST_ID | PROCESSLIST_USER | PROCESSLIST_HOST | PROCESSLIST_DB | PROCESSLIST_COMMAND | PROCESSLIST_TIME | PROCESSLIST_STATE                                                | PROCESSLIST_INFO                         | PARENT_THREAD_ID | ROLE | INSTRUMENTED |
+-----------+----------------------------------------+------------+----------------+------------------+------------------+----------------+---------------------+------------------+------------------------------------------------------------------+------------------------------------------+------------------+------+--------------+
|         1 | thread/sql/main                        | BACKGROUND |           NULL | NULL             | NULL             | NULL           | NULL                |             7476 | NULL                                                             | NULL                                     |             NULL | NULL | YES          |
|         2 | thread/innodb/io_handler_thread        | BACKGROUND |           NULL | NULL             | NULL             | NULL           | NULL                |             NULL | NULL                                                             | NULL                                     |             NULL | NULL | YES          |
|         3 | thread/innodb/io_handler_thread        | BACKGROUND |           NULL | NULL             | NULL             | NULL           | NULL                |             NULL | NULL                                                             | NULL                                     |             NULL | NULL | YES          |
|         4 | thread/innodb/io_handler_thread        | BACKGROUND |           NULL | NULL             | NULL             | NULL           | NULL                |             NULL | NULL                                                             | NULL                                     |             NULL | NULL | YES          |
|         5 | thread/innodb/io_handler_thread        | BACKGROUND |           NULL | NULL             | NULL             | NULL           | NULL                |             NULL | NULL                                                             | NULL                                     |             NULL | NULL | YES          |
|         6 | thread/innodb/io_handler_thread        | BACKGROUND |           NULL | NULL             | NULL             | NULL           | NULL                |             NULL | NULL                                                             | NULL                                     |             NULL | NULL | YES          |
|         7 | thread/innodb/io_handler_thread        | BACKGROUND |           NULL | NULL             | NULL             | NULL           | NULL                |             NULL | NULL                                                             | NULL                                     |             NULL | NULL | YES          |
|         8 | thread/innodb/io_handler_thread        | BACKGROUND |           NULL | NULL             | NULL             | NULL           | NULL                |             NULL | NULL                                                             | NULL                                     |             NULL | NULL | YES          |
|         9 | thread/innodb/io_handler_thread        | BACKGROUND |           NULL | NULL             | NULL             | NULL           | NULL                |             NULL | NULL                                                             | NULL                                     |             NULL | NULL | YES          |
|        10 | thread/innodb/io_handler_thread        | BACKGROUND |           NULL | NULL             | NULL             | NULL           | NULL                |             NULL | NULL                                                             | NULL                                     |             NULL | NULL | YES          |
|        11 | thread/innodb/io_handler_thread        | BACKGROUND |           NULL | NULL             | NULL             | NULL           | NULL                |             NULL | NULL                                                             | NULL                                     |             NULL | NULL | YES          |
|        12 | thread/innodb/srv_monitor_thread       | BACKGROUND |           NULL | NULL             | NULL             | NULL           | NULL                |             NULL | NULL                                                             | NULL                                     |             NULL | NULL | YES          |
|        13 | thread/innodb/srv_purge_thread         | BACKGROUND |           NULL | NULL             | NULL             | NULL           | NULL                |             NULL | NULL                                                             | NULL                                     |             NULL | NULL | YES          |
|        14 | thread/innodb/srv_master_thread        | BACKGROUND |           NULL | NULL             | NULL             | NULL           | NULL                |             NULL | NULL                                                             | NULL                                     |             NULL | NULL | YES          |
|        15 | thread/innodb/srv_error_monitor_thread | BACKGROUND |           NULL | NULL             | NULL             | NULL           | NULL                |             NULL | NULL                                                             | NULL                                     |             NULL | NULL | YES          |
|        16 | thread/innodb/srv_lock_timeout_thread  | BACKGROUND |           NULL | NULL             | NULL             | NULL           | NULL                |             NULL | NULL                                                             | NULL                                     |             NULL | NULL | YES          |
|        18 | thread/innodb/page_cleaner_thread      | BACKGROUND |           NULL | NULL             | NULL             | NULL           | NULL                |             NULL | NULL                                                             | NULL                                     |             NULL | NULL | YES          |
|        19 | thread/sql/signal_handler              | BACKGROUND |           NULL | NULL             | NULL             | NULL           | NULL                |             NULL | NULL                                                             | NULL                                     |                1 | NULL | YES          |
|        60 | thread/sql/one_connection              | FOREGROUND |             41 | repl             | ubuntuserver2    | NULL           | Binlog Dump         |             4628 | Master has sent all binlog to slave; waiting for binlog to be up | NULL                                     |             NULL | NULL | YES          |
|        71 | thread/sql/one_connection              | FOREGROUND |             52 | datadog          | localhost        | NULL           | Query               |                0 | Sending data                                                     | SELECT * FROM performance_schema.threads |             NULL | NULL | YES          |
+-----------+----------------------------------------+------------+----------------+------------------+------------------+----------------+---------------------+------------------+------------------------------------------------------------------+------------------------------------------+------------------+------+--------------+
MySQL SELECT grant - OK



$  mysql -u datadog --password=XXXXX -e "SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST" && \
echo -e "\033[0;32mMySQL PROCESS grant - OK\033[0m" || \
echo -e "\033[0;31mMissing PROCESS grant\033[0m"

Output :

Warning: Using a password on the command line interface can be insecure.
+----+---------+---------------------+------+-------------+------+------------------------------------------------------------------+----------------------------------------------+
| ID | USER    | HOST                | DB   | COMMAND     | TIME | STATE                                                            | INFO                                         |
+----+---------+---------------------+------+-------------+------+------------------------------------------------------------------+----------------------------------------------+
| 53 | datadog | localhost           | NULL | Query       |    0 | executing                                                        | SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST |
| 41 | repl    | ubuntuserver2:57334 | NULL | Binlog Dump | 4661 | Master has sent all binlog to slave; waiting for binlog to be up | NULL                                         |
+----+---------+---------------------+------+-------------+------+------------------------------------------------------------------+----------------------------------------------+
MySQL PROCESS grant - OK

C)   Configure Agent to connect to MySQL 
Edit /etc/dd-agent/conf.d/mysql.yaml

$ /etc/dd-agent/conf.d

$ ls -larth mysql*
-rw-r--r-- 1 dd-agent root 3.3K Feb 14 03:19 mysql.yaml.example

$ cp mysql.yaml.example mysql.yaml 

$ chown dd-agent:root mysql.yaml

Edit mysql.yaml file and enter the config parameter’s 

$ vi /etc/dd-agent/conf.d/mysql.yaml

Output:

init_config:

instances:
  - server: localhost
    user: datadog
    pass: XXXXXXX
    port: 3306             # Optional
    # sock: /path/to/sock    # Connect via Unix Socket
    # defaults_file: my.cnf  # Alternate configuration mechanism
    # connect_timeout: None  # Optional integer seconds
    # tags:                  # Optional
    #   - optional_tag1
    #   - optional_tag2
    # options:               # Optional
    #   replication: false
    #   galera_cluster: false
    #    extra_status_metrics: true
    #   extra_innodb_metrics: true
    #   extra_performance_metrics: true
    #   schema_size_metrics: false
    #   disable_innodb_metrics: false
    #
    #     NOTE: disable_innodb_metrics should only be used by users with older (unsupported) versions of
    #           MySQL who do not run/have innodb engine support and may experiment issue otherwise.
    #           Should this flag be enabled you will only receive a small subset of metrics.
    #
    #     NOTE: extra_performance_metrics will only be reported if `performance_schema` is enabled
    #           in the MySQL instance and if the version for that instance is >= 5.6.0
    #
    #           extra_performance_metrics and schema_size_metrics will run two heavier queries
    #           against your DB to compute the relevant metrics for all your existing schemas.
    #           Due to the nature of these calls, if you have a high number of tables and/or schemas,
    #           you may be subject to some negative impact in the performance of your DB.
    #           Please bear that in mind when enabling them.
    #           Metrics provided by the options:
    #                     - mysql.info.schema.size (per schame)
    #                     - mysql.performance.query_run_time.avg (per schema)
    #                     - mysql.performance.digest_95th_percentile.avg_us
    #
    #           With the addition of new metrics to the MySQL catalog starting with agent >=5.7.0, because
    #           we query additional schemas to get this full set of metrics. Some of these require the user
    #           defined for the instance to have PROCESS and SELECT privileges. Please take a look at the
    #           MySQL integration tile in the Datadog WebUI for further instructions.
    #
    # ssl:               # Optional
    #   key: /path/to/my/key.file
    #   cert: /path/to/my/cert.file
    #   ca: /path/to/my/ca.file

    # queries:               # Optional
    #  - # Sample Custom metric
    #    query: SELECT TIMESTAMPDIFF(second,MAX(create_time),NOW()) as last_accessed FROM requests
    #    metric: app.seconds_since_last_request
    #    tags:               # Optional - only applied to this custom metric query, will not affect default mysql metrics
    #        - custom_tag1
    #        - custom_tag2
    #    type: gauge
    #    field: last_accessed
    #  - # Sample Custom metric
    #    query: SELECT TIMESTAMPDIFF(second,MAX(create_time),NOW()) as last_user FROM users
    #    metric: app.seconds_since_new_user
    #    tags:               # Optional - only applied to this custom metric query, will not affect default mysql metrics
    #        - custom_tag1
    #        - custom_tag2
    #    type: gauge
    #    field: last_user

Sample :
https://github.com/Datadog/integrations-core/blob/master/mysql/conf.yaml.example
Mysql Integration checks :
https://github.com/Datadog/integrations-core/blob/master/mysql/check.py

d)   Validation 
To validate your installation and configuration, restart the agent and execute the info command.

sudo /etc/init.d/datadog-agent restart
$  /etc/init.d/datadog-agent info
====================
Collector (v 5.11.2)
====================

  Status date: 2017-03-20 00:46:36 (4s ago)
  Pid: 1962
  Platform: Linux-3.13.0-24-generic-x86_64-with-Ubuntu-14.04-trusty
  Python Version: 2.7.12, 64bit
  Logs: , /var/log/datadog/collector.log, syslog:/dev/log

  Clocks
  ======

    NTP offset: 0.0618 s
    System UTC time: 2017-03-19 19:16:40.688800

  Paths
  =====

    conf.d: /etc/dd-agent/conf.d
    checks.d: /opt/datadog-agent/agent/checks.d

  Hostnames
  =========

    socket-hostname: ubuntuserver1
    hostname: ubuntuserver1
    socket-fqdn: ubuntuserver1

  Checks
  ======

    ntp
    ---
      - Collected 0 metrics, 0 events & 0 service checks

    disk
    ----
      - instance #0 [OK]
      - Collected 56 metrics, 0 events & 0 service checks

    network
    -------
      - instance #0 [OK]
      - Collected 15 metrics, 0 events & 0 service checks

    mysql
    -----
      - instance #0 [OK]
      - Collected 65 metrics, 0 events & 1 service check
      - Dependencies:
          - pymysql: 0.6.6.None


  Emitters
  ========

    - http_emitter [OK]

====================
Dogstatsd (v 5.11.2)
====================

  Status date: 2017-03-20 00:46:37 (3s ago)
  Pid: 1929
  Platform: Linux-3.13.0-24-generic-x86_64-with-Ubuntu-14.04-trusty
  Python Version: 2.7.12, 64bit
  Logs: , /var/log/datadog/dogstatsd.log, syslog:/dev/log

  Flush count: 763
  Packet Count: 0
  Packets per second: 0.0
  Metric count: 1
  Event count: 0
  Service check count: 0

====================
Forwarder (v 5.11.2)
====================

  Status date: 2017-03-20 00:46:37 (3s ago)
  Pid: 1928
  Platform: Linux-3.13.0-24-generic-x86_64-with-Ubuntu-14.04-trusty
  Python Version: 2.7.12, 64bit
  Logs: , /var/log/datadog/forwarder.log, syslog:/dev/log

  Queue Size: 453 bytes
  Queue Length: 1
  Flush Count: 2317
  Transactions received: 1152
  Transactions flushed: 1151
  Transactions rejected: 0
  API Key Status: API Key is valid


======================
Trace Agent (v 5.11.2)
======================

  Not running (port 8126)

For Instances with replication setup add the following lines to mysql.yaml file 

init_config:

instances:
  - server: localhost
    user: datadog
    pass: datadog
    port: 3306             # Optional
    # sock: /path/to/sock    # Connect via Unix Socket
    # defaults_file: my.cnf  # Alternate configuration mechanism
    # connect_timeout: None  # Optional integer seconds
    # tags:                  # Optional
    #   - optional_tag1
    #   - optional_tag2
    # options:               # Optional
    replication: true
instances:
  - server: localhost
    user: datadog
    pass: datadog
    port: 3306

For details on different types of Matrix visit here :


Step 4 : Setting up the Dashboard :

Dashboards contain graphs with real-time performance metrics

  • Synchronous mousing across all graphs in a dashboard.
  • Vertical bars are events in the context of the metric.
  • Click & drag on a graph to zoom-in on a particular time-frame.
  • As you hover over the graph the event stream moves with you.
  • Display by zone, host, or total usage.
  • We expose the JSON editor of the graph allowing for arithmetic and functions to be applied to metrics.
  • Share a graph snapshot that will appear in the stream; clicking on that snapshot returns you to the original dashboard (via the camera in the upper right of a graph).
  • Graphs can be embedded in an iframe, giving a 3rd party a live graph without access to your data or any other information (via the pencil in the upper right of a graph).

Navigate to https://app.datadoghq.com/dash/list
Click on New Dashboard

Select on New Time Board 

Click and drag the time series  event board and double click to start configuring .


Choose Metrics and Events and configure the dashboard 

Step 5 : Infrastructure Details 

  • All machines show up in the infrastructure overview
  • Here you can see the tags applied to each machine; as they’re assigned to perform certain roles, tagging allows you to indicate machines have a certain purpose
  • We do as much as possible to automatically categorize your servers for you, to create structure in your infrastructure with as little work as possible (unlike explicitly creating all your clusters). Thus if a new machine is tagged, you can immediately see the stats for that machine based on what was previously set up for that tag.


Step 6: Host Map 

The Host Map can be found under the Infrastructure menu and offers the ability to:

  • Quickly visualize your entire environment regardless of whether it 5, 500, or 50,000 hosts.
  • Identify outliers
  • Detect usage patterns
  • Optimize resources

Step 7 : Event :

The Event Stream is based on the same conventions as a blog:

  • Every event in the stream can be commented on.
  • Great for distributed teams and maintaining the focus of an investigation
  • You can filter by: user, source, tag, host, status, priority, incident

For each incident users can:

  • Claim it
  • Increase/decrease priority
  • Comment
  • See similar incidents
  • @ notify team members, who receive an email
  • @support-datadog to ask for assistance


Step 8 : Creating Monitor’s 

Monitoring gives you the ability to be notified if the aggregate of a specific metric is above or below a certain threshold:

  • Across your entire infrastructure
  • Per machine (average, max, min, or sum)
  • Applies to any metric you want, revenue: data center temperature, etc.
  • Multi alerts (by device, host, etc.)
  • Set alert notification message, including @ capabilities


Navigate to https://app.datadoghq.com/monitors 


Click on New Monitor 


Select the Monitor Type: host-, metric-, integration-, process-, network-, event-based, and custom. See side navigation to drill into a specific type.

  1. Choose What to monitor 
  2. Define conditions 

 

For More Details Visit : http://docs.datadoghq.com/guides/monitors/

Full Tutorial for MySQL Datadog Integration 

Creating Monitor and setting up conditions

Datadog Blog for MySQL Datadog Integration :


Reference:
https://www.datadoghq.com/blog/monitoring-mysql-performance-metrics/


https://www.datadoghq.com/blog/collecting-mysql-statistics-and-metrics/


https://www.datadoghq.com/blog/mysql-monitoring-with-datadog/

 

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

Powered by WordPress.com.

Up ↑

%d bloggers like this: