@cryptotaxi247 / netdata-1 / commits / 28cc64633

add option to include my.cnf

paulfantom committed Jun 14, 2016 at 21:02 UTC 28cc64633dd36d4e01db6e2b03ab6d0ea965fbce
1 file changed +16 -11
python.d/mysql.chart.py
+16 -11
@@ -313,6 +313,7 @@ def get_data(config):
313 stderr.write(NAME + ": reconnecting\n")
314 cnx = pymysql.connect(user=config['user'],
315 password=config['password'],
316 + read_default_file=config['my.cnf'],
317 unix_socket=config['socket'],
318 host=config['host'],
319 port=config['port'],
@@ -341,35 +342,39 @@ def check():
342 config = cfg
343 for i in range(len(config)):
344 if 'name' not in config[i]:
344 - config[i]['name'] = "mysql_srv_"+str(i)
345 + config[i]['name'] = "srv_"+str(i)
346 if 'user' not in config[i]:
347 config[i]['user'] = 'root'
348 if 'password' not in config[i]:
349 config[i]['password'] = None
349 - if 'socket' not in config[i]:
350 + if 'my.cnf' in config[i]:
351 config[i]['socket'] = None
351 - if 'host' not in config[i]:
352 config[i]['host'] = None
353 - if 'port' in config[i]:
354 - config[i]['port'] = int(config[i]['port'])
355 - else:
356 - config[i]['port'] = 3306
357 - if config[i]['host'] is None:
353 config[i]['port'] = None
359 - if config[i]['host'] is None and config[i]['socket'] is None:
360 - remove.append(i)
354 + elif 'socket' in config[i]:
355 + config[i]['my.cnf'] = None
356 + config[i]['host'] = None
357 + config[i]['port'] = None
358 + elif 'host' in config[i]:
359 + config[i]['my.cnf'] = None
360 + config[i]['socket'] = None
361 + if 'port' in config[i]:
362 + config[i]['port'] = str(config[i]['port'])
363 + else:
364 + config[i]['port'] = 3306
365
366 for srv in config:
367 try:
368 cnx = pymysql.connect(user=srv['user'],
369 password=srv['password'],
370 + read_default_file=srv['my.cnf'],
371 unix_socket=srv['socket'],
372 host=srv['host'],
373 port=srv['port'],
374 connect_timeout=int(update_every))
375 cnx.close()
376 except Exception as e:
372 - stderr.write(NAME + " has problem connecting to server: "+str(e)+"\n")
377 + stderr.write(NAME + " has problem connecting to server: "+str(e).replace("\n"," ")+"\n")
378 config.remove(srv)
379
380 if len(config) == 0: