System ManageMent

python, mariadb, Grafana를 이용한 URL 모니터링 (1) - 구축

Pydole 2018. 12. 30. 02:41

- Python : 웹 사이트 URL Check

- mariadb : check 결과를 DB화. (Grafana에서 지원하는 Data Source 중 선택)

- Grafana : DashBoard


1. python으로 웹 사이트 핼스체크

 

import requests
import time
import pymysql
from datetime import datetime

conn = pymysql.connect(host=' ', user=' ', password=' ', db=' ', charset='utf8')

c = conn.cursor()

url = ('url1','url2') # urllist, http프로토콜까지 붙임


def func1():
    sql = 'insert into urlcheck (logdate,url,response) values ("%s", "%s", "%s")' % (str(datetime.today())[:19], site, r.status_code)
    c.execute(sql)
    time.sleep(1)

while True:
    for site in url:
        with requests.Session() as s:
            r = s.get(site)
            if r.status_code == 200:
                func1()
            else:
                func1()
    conn.commit()
    print("Stand-By")
    time.sleep(30)

 

 

 

 

2. mariadb 설치 및 테이블 생성

 

 

 

 

 

3. Grafana에서 mariadb 연동