Home |  MySQL Buzz |  FAQ |  Feeds |  Submit your blog feed |  Feedback |  Archive |  Aggregate feed RSS 2.0 English Deutsch Español Français Italiano 日本語 Русский Português 中文
Showing entries 1 to 30 of 141 Next 30 Older Entries

Displaying posts with tag: monitoring (reset)

Announcing ClusterControl Support for MariaDB 10
+0 Vote Up -0Vote Down
July 22, 2014 By Severalnines

We just wanted to make it official: Severalnines ClusterControl now supports MariaDB 10!

 

As most of you know will know by now, MariaDB 10 is the newest and most advanced version of the popular MariaDB relational database system. Whilst remaining application-compatible with the MySQL database, it adds many new capabilities to address the most challenging web and enterprise application use cases. Cluster deployments would be based on MariaDB Galera Cluster 10, which is a complete merge of MariaDB 10.0.12 and Galera Cluster. 

 

ClusterControl for MariaDB Clusters

 

  [Read more...]
Monitoring DML/slow queries with graphite
+1 Vote Up -0Vote Down

pt-query-digest, Anemometer or "Anemomaster" do a great job of analysing your queries and giving you visibility into what's going on with your MySQL servers. However, the place where the query digests are written is just some MySQL tables on some server. Do you have monitoring/alerts on that table? How will you verify a specific query does not exceed some runtime/execution count threshold, and get notified when it does?

At Outbrain we use Graphite to collect almost all of our data. We like it for its simplicity and for the fact it has a "push" strategy as opposed to "pull" strategy: every

  [Read more...]
"Anemomaster": DML visibility. Your must-do for tomorrow
+0 Vote Up -0Vote Down

Here's our take of master DML query monitoring at Outbrain (presented April 2014). It took a half-day to code, implement, automate and deploy, and within the first hour of work we managed to catch multiple ill-doing services and scripts. You might want to try this out for yourself.

What's this about?

What queries do you monitor on your MySQL servers? Many don't monitor queries at all, and only look up slow queries on occasion, using pt-query-digest. Some monitor slow queries, where Anemometer (relying on pt-query-digest) is a very good tool. To the extreme, some monitor TCP traffic

  [Read more...]
mycheckpoint, discontinued
+0 Vote Up -0Vote Down

Time to admit to myself: mycheckpoint has to be discontinued.

I started mycheckpoint back in 2009, as a free & open source lightweight monitoring tool for MySQL. Over some years it evolved and became an actual (lightweight) monitoring solution, used by many. It has a unique and original design, which, alas, is also its bane.

mycheckpoint uses the relational model & SQL to store and query monitored metrics. This leads to quite a sophisticated service, which can make practically anything visible to the user. The raw data is just numbers. but with some SQL-Fu one can generate charts out of it,  (

  [Read more...]
About Nagios monitoring in real example
+0 Vote Up -0Vote Down

Now it’s time to setup proper monitoring to avoid unpleasant surprises in future.

There are two major problems the monitoring solves: alerting and trending. Alerting is to notify a responsible person about some major event like service stopped working. Trending is to track the change of something over time – disk or memory usage over time, replication lag etc.

This post will be about alerting with Nagios.

The major problem with most of Nagios setups I’ve seen is excessive amount of false positives. This kills whole idea of monitoring. The matter is when an admin gets a false alert they tend to mute it, explicitly or implicitly. They either filter alerts out or don’t treat them seriously. In general case the alert must be

  [Read more...]
Contain oom-killer
+0 Vote Up -0Vote Down

Amazon micro instances is the great start option for small websites. Learn how to contain oom-killer that may make wrong decision.

oom-killer as MySQL vs Apache arbiter

When it comes to competition for memory oom-killer steps in. I run Apache and MySQL on the same box. This you should probably never do, but I thought that on my tiny setup they will get along. That’s not true. It started when first users came in. The system ran quickly out of memory:

Feb  5 03:48:26 app-01 kernel: [3313052.688189] httpd invoked oom-killer: gfp_mask=0x201da, order=0, oom_adj=0, oom_score_adj=0
Feb  5 03:48:26 app-01 kernel: [3313052.688203] httpd cpuset=/ mems_allowed=0
Feb  5 03:48:26 app-01 kernel: [3313052.688208] Pid: 21297, comm: httpd Not tainted 3.4.73-64.112.amzn1.x86_64 #1
Feb  5
  [Read more...]
Seconds_behind_master vs. Absolute slave lag
+0 Vote Up -0Vote Down

I am unable to bring myself to trust the Seconds_behind_master value on SHOW SLAVE STATUS. Even with MySQL 5.5's CHANGE MASTER TO ... MASTER_HEARTBEAT_PERIOD (good thing, applied when no traffic goes from master to slave) it's easy and common to find fluctuations in Seconds_behind_master value.

And, when sampled by your favourite monitoring tool, this often leads to many false negatives.

At Outbrain we use HAProxy as proxy to our slaves, on multiple clusters. More about that in a future post. What's important here is that our decision whether a slave enters or leaves a certain pool (i.e. gets UP or DOWN status in HAProxy) is based on replication lag. Taking slaves out when they are actually replicating well is bad, since this reduces the amount of serving

  [Read more...]
Bash script: report largest InnoDB files
+1 Vote Up -0Vote Down

The following script will report the largest InnoDB tables under the data directory: schema, table & length in bytes. The tables could be non-partitioned, in which case this is simply the size of the corresponding .ibd file, or they can be partitioned, in which case the reported size is the sum of all partition files. It is assumed tables reside in their own tablespace files, i.e. created with innodb_file_per_table=1.

(
    mysql_datadir=$(grep datadir /etc/my.cnf | cut -d "=" -f 2)
    cd $mysql_datadir
    for frm_file in $(find . -name "*.frm")
    do
        tbl_file=${frm_file//.frm/.ibd}
        table_schema=$(echo $frm_file | cut -d "/" -f 2)
        table_name=$(echo $frm_file | cut -d "/" -f 3 | cut -d "." -f 1)
        if [ -f $tbl_file ]
        then
  [Read more...]
Innotop: A real-time, advanced investigation tool for MySQL
+2 Vote Up -0Vote Down

GUI monitoring tools for MySQL are not always suitable for all our needs or situations. Most of them are designed to provide historical views into what happens to our database over time rather then real-time insight into current MySQL server status. Excellent free tools for this include Cacti, Zabbix, Ganglia, Nagios, etc. But each of them needs to be properly configured to provide details on what is going on in our MySQL instances. And setting up one of these monitoring solutions is neither

  [Read more...]
Trick: recovering from "no space left on device" issues with MySQL
+2 Vote Up -0Vote Down

Just read Ronald Bradford's post on an unnecessary 3am (emergency) call. I sympathize! Running out of disk space makes for some weird MySQL behaviour, and in fact whenever I encounter weird behaviour I verify disk space.

But here's a trick I've been using for years to avoid such cases and to be able to recover quickly. It helped me on such events as running out of disk space during ALTER TABLEs or avoiding purging of binary logs when slave is known to be under maintenance.

Ronald suggested it -- just put a dummy file in your @@datadir! I like putting a 1GB dummy file: I typically copy+paste a 1GB binary log file and call it "placeholder.tmp". Then I forget all about it. My disk space

  [Read more...]
By all means, learn from my mistakes as a DBA!
+1 Vote Up -0Vote Down
Here are 3 recent ' oops... wish I hadn't done that :/ ' mistakes I've made since joining moz that you might as well avoid (I'm sure there will be more, but they better not be the same) Reviewing config files for MySQL, but not all of the defaults      We recently migrated a few MySQL databases to a new datacenter, and took advantage of the migration to upgrade the MySQL version(s) at the
MySQL Monitoring With Cacti Using Percona Monitoring Plugins (1-minute resolution)
+0 Vote Up -0Vote Down

Today, just like many times before, I needed to configure a monitoring server for MySQL using Cacti and awesome Percona Monitoring Templates. The only difference was that this time I wanted to get it to run with 1 min resolution (using ganglia and graphite, both with 10 sec resolution, for all the rest of our monitoring in Swiftype really spoiled me!). And that’s where the usual pain in the ass Cacti configuration gets really amplified by the million things you need to change to make it work. So, this is a short checklist post for those who need to configure a Cacti server with 1 minute resolution and setup Percona Monitoring Plugins on it.

Configuring Cacti for 60-seconds polling

First of all, we

  [Read more...]
Announcing the MySQL Plugin for New Relic
+2 Vote Up -0Vote Down

Many application developers would know of New Relic. A SaaS performance and monitoring tool targeted towards your web application monitoring including PHP, Ruby, Java, .Net, Python and Node.

With the release today (June 19, 2013) of the New Relic Platform, custom monitoring of data stores including MySQL are now possible. Try it now free. This link will provide you a free standard account (no cost, no billing details necessary), that enables you to perform application monitoring, server monitoring, MySQL instance monitoring and monitoring of many other products via many plugins.

Over the next few posts I will be discussing some of the design decisions I made for this MySQL plugin. New

  [Read more...]
What do you want to know about Glimpsee?
+0 Vote Up -2Vote Down

We have had some success with the introduction of Glimpsee last month. Merci !
I would like to thanks all of you who have registered and those who are interested in Glimpsee without even really knowing what’s going on.
It is really important for us to feel enthusiasm about our work, because we work hard to provide a tool that could improve your life.

We hope to offer a public beta release of Glimpsee before the end of the year and many more surprises before. Meanwhile, we would like to offer you an incomplete FAQ about Glimpsee, enjoy :
 

What is Glimpsee?

 

Glimpsee is a smart dashboard


  [Read more...]
mycheckpoint revision 231 released
+1 Vote Up -0Vote Down

A new release for mycheckpoint: lightweight, SQL oriented MySQL monitoring solution.

If you're unfamiliar with mycheckpoint, well, the one minute sales pitch is: it's a free and open source monitoring tool for MySQL, which is extremely easy to install and execute, and which includes custom queries, alerts (via emails), and out of the box HTTP server and

  [Read more...]
On the threshold
+0 Vote Up -0Vote Down

When you setup a monitoring system for SQL Server, you often use thresholds to determine when an instance is healthy. You might say that you want to be alerted when CPU use is over 90% or when there’s only 10% of disk space left. The trouble with these thresholds is that they will often throw off false positives, or send you an alert when really nothing is wrong. Simple thresholds often have to be tuned to the individual instance, since a server with 10 TB still has 1 TB of space left at 90% disk use.

Baron Schwartz blogged about this issue in

  [Read more...]
Adaptive Fault Detection food fight
+1 Vote Up -0Vote Down

I was a guest on the Food Fight Show last week, along with a bevy of really smart people asking and answering tough questions on fault detection. We didn’t talk a lot about MySQL, but given that VividCortex is focusing on MySQL initially, pretty much all of my experience with zero-threshold, zero-configuration fault detection is MySQL-based.

It’s a fun conversation with a lot of insights into the industry, what’s wrong with current monitoring tools, and where monitoring is going. Also, it’s sold out now, but Monitorama is a conference you might be interested in if you’re doing monitoring (and who isn’t?)

MySQL Cluster: Troubleshooting Error 157 / 4009 Cluster Failure
+1 Vote Up -0Vote Down
0 0 1 519 2962 Severalnines AB 24 6 3475 14.0 Normal 0 false false false false EN-US JA X-NONE
Suddenly your application starts throwing "error 157" and performance degrades or is non-existing. It is easy to panic then and try all sorts of actions to get past the problem. We have seen several users doing:
  • rolling restart
  • stop cluster / start cluster
because they also see this in the error logs:120828 13:15:11 [Warning] NDB: Could not acquire global schema
  [Read more...]
Manage your MySQL & MariaDB databases - the simple way
+1 Vote Up -0Vote Down

New quick-start guide for MySQL DBAs: SkySQL™ Enterprise Monitor makes managing your MySQL & MariaDB databases that much easier

We’ve just published a new Quick Start Guide to SkySQL™ Enterprise Monitor for all MySQL & MariaDB DBAs out there, who are looking for ways to manage their databases more easily.

read more

Devops in Munich
+0 Vote Up -1Vote Down

Devopsdays Mountainview sold out in a short 3 hours .. but there's other events that will breath devops this summer.
DrupalCon in Munich will be one of them ..

Some of you might have noticed that I`m cochairing the devops track for DrupalCon Munich,
The CFP is open till the 11th of this month and we are still actively looking for speakers.

We're trying to bridge the gap between drupal developers and the people that put their code to production, at scale.
But also enhancing the knowledge of infrastructure components Drupal developers depend on.

We're looking for talks both on culture (both success stories and failure) , automation,
specifically looking for people talking about drupal deployments , eg using tools like Capistrano, Chef, Puppet,
We want to hear where Continuous Integration fits in your deployment , do you do Continuous Delivery of a




  [Read more...]
how to determine the runtime and start time of a Linux process
+0 Vote Up -1Vote Down

Yesterday, I needed to determine the runtime of a Linux process for a monitoring script.

Cos the format for start_time of the ps command may change if the process was not started in the same year, I decided to take the neccessary informations from the /proc/<PID>/stat file.

In this file the process start time since boot is defined at the twenty-second field, expressed in Jiffies – the scale unit of the system timer. (One Jiffie is one tick of the system timer).

To convert Jiffies to seconds I just have to divide the number of Jiffies by the frequency (hertz) of the system timer, which is defined in the Linux Kernel header file include/asm-generic/param.h. The frequency may differ between Linux kernel versions and hardware

  [Read more...]
Percona Monitoring Plugins fix: Query Response Time
+0 Vote Up -0Vote Down

After switching from the Better Cacti Templates to the Percona Monitoring Plugins we suffered from the Query Response Time and the Query Time Histogram not graphing at all.

It took me a while to figure out why our new instance wasn’t graphing: the response time query was performing and the script was picking up its values. Also the rrd files were created but for some bizarre reason all values were set to “NaN”, in rrd/cacti terms: Not a Number. If you search on that subject you will come across a lot of (forum) postings stating you need to change your graph type to “GAUGE” or change the MIN/MAX values for your data templates. Strange as this

  [Read more...]
MySQL monitoring: storing, not caching
+2 Vote Up -0Vote Down

I've followed with interest on Baron's Why don’t our new Nagios plugins use caching? and Sheeri's Caching for Monitoring: Timing is Everything. I wish to present my take on this, from mycheckpoint's point of view.

So mycheckpoint works in a completely different way. On one hand, it doesn't bother with caching. On the other hand, it doesn't bother with re-reads of data.

There are no staleness issues, the data is consistent as it can get (you can never get a completely atomic read of everything in MySQL), and you can issue as many calculations as you want at the price of one take of monitoring. As in

  [Read more...]
MySQL replication monitoring on Ubuntu 10.04 with Nagios and NRPE
+0 Vote Up -0Vote Down

If you're using MySQL replication, then you're probably counting on it for some fairly important need. Monitoring via something like Nagios is generally considered a best practice. This article assumes you've already got your Nagios server setup and your intention is to add a Ubuntu 10.04 NRPE client. This article also assumes the Ubuntu 10.04 NRPE client is your MySQL replication master, not the slave. The OS of the slave does not matter.

Getting the Nagios NRPE client setup on Ubuntu 10.04

At first it wasn't clear what packages would be appropriate packages to install. I was initially misled by the naming of the nrpe package, but I found the correct packages to be:

sudo apt-get install nagios-nrpe-server nagios-plugins

The NRPE configuration is stored in /etc/nagios/nrpe.cfg, while the plugins are installed in


  [Read more...]
Monitoring your monitoring tools (MONyog inside) !
+6 Vote Up -1Vote Down

Regardless of the monitoring tool you use to monitor your databases, it can be better to monitor this tool.
No, it’s not a joke ! Do you think you can have a benefit with a monitoring tool not connected to your servers ? ( without being alerted )

I choose to talk about MONyog here but this can apply to all existing monitoring tools.
I just want to share the message, the tool does not matter, so, do it !

So, let me explain how to control if you have fresh data with MONyog.
With MONyog it’s easy because it’s an agentless monitoring tool.

There are two ways to check that :

Per server general info :

 





  [Read more...]
Performance monitoring with nmon
+0 Vote Up -0Vote Down

In this tutorial I will describe, how to use nmon (Nigel’s performance Monitor) to monitor performance data in the interactive mode or in the capture mode.

nmon can display / capture the following performance data

  • CPU utilization
  • Memory use
  • Kernel statistics and run queue
  • Disks I/O rates, transfers, and read/write ratios
  • File systems size and free space
  • Disk adapters
  • Network I/O rates, transfers, and read/write ratios
  • Paging space and paging rates
  • Machine details, CPU and OS specification
  • Top processors
  • User defined disk groups
  • Asynchronous I/O – AIX only
  • Workload Manager – AIX only
  • ESS and other disk subsystem – AIX only
  [Read more...]
My MySQL SNMP Agent
+1 Vote Up -0Vote Down
Back in February I wrote an article titled A Small Fix For mysql-agent. Since then we did a few more fixes to the agent and included a Bytes Behind Master (or BBM) chart. For those who can't wait to get their hands on the code, here's the current version: MySQL SNMP agent RPM. For those who'd like to learn about it's capabilities and issues, keep reading.

What to Expect From this Version


The article I quoted above pretty much describes the main differences with the original project, but we went further with the changes while still relying on Masterzen's code for the data collection piece.

The first big change is that we transformed




  [Read more...]
Announcing common_schema: common views & routines for MySQL
+1 Vote Up -0Vote Down

Today I have released common_schema, a utility schema for MySQL which includes many views and functions, and is aimed to be installed on any MySQL server.

What does it do?

There are views answering for all sorts of useful information: stuff related to schema analysis, data dimensions, monitoring, processes & transactions, security, internals... There are basic functions answering for common needs.

Some of the views/routines simply formalize those queries we tend to write over and over again. Others take the place of external tools, answering complex questions via SQL and metadata. Still others help out with SQL generation.

Here are a few highlights:

  • Did you know you can work out
  [Read more...]
Summary of Blog Posts for Week of June 25
+0 Vote Up -0Vote Down

We make a lot of posts that give IT tips and advice, as well as recommendations on how to use Monitis, so here is a summary of the posts for this week in case you missed them.

Monitoring IIS With VBScript via Monitis; It’s so Easy!

This post demonstrates how to monitor an IIS using Monitis Custom Monitors and VBscript. You can use the Monitis API to monitor your own custom metrics. This is very powerful because it lets you monitor any IIS metrics you like, set thresholds and receive notifications.

  [Read more...]

Monitoring just a blink away...
+1 Vote Up -1Vote Down

I bring this up because of recent conversations I have found myself in.

Over the years I have gone back and forth between OSX & Linux laptops. Over these same years I was also monitoring several MySQL databases. I have found numerous server side solutions for you to be able to monitor your database, Nagios and of course MySQL Enterprise Monitor (http://www.mysql.com/products/enterprise/monitor.html) to list a couple. Both of these are great solutions and allow you to try and get some sleep and night.
Years ago, while using OS X, I was enlightened to learn about a free module called Geektool, it is not new, but I often find people are unaware of it.  I have had at least three conversations about it lately. While Nagios and



  [Read more...]
Showing entries 1 to 30 of 141 Next 30 Older Entries

Planet MySQL © 1995, 2014, Oracle Corporation and/or its affiliates   Legal Policies | Your Privacy Rights | Terms of Use

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.