Beispiel #1
0
def main():
    ## 从yaml列表中获取数据
    textTagList = yamlDict.get('textTagList')
    legendList  = [ x.get('name') for x in textTagList ]
    colorList   = yamlDict.get('colorList')
    titleName   = yamlDict.get('titleName')
    yUnit       = yamlDict.get('yUnit')
    divUnit     = yamlDict.get('divUnit') or 1
    picType     = yamlDict.get('picType')

    ## 获取之前一年的月份列表
    clockList = pre_twelve_month()

    ## 生成X轴刻度列表
    xLabel = [ '{}年{}月'.format(
            datetime.datetime.fromtimestamp(min(x)).year, datetime.datetime.fromtimestamp(min(x)).month 
        )
        for x in clockList ]

    ## 生成series列表
    seriesList = [
        {
            'name' : x.get('name'),
            'type' : picType,
            'data' : data_list(x, clockList, divUnit)
        }
        for x in textTagList 
    ]

    ## 生成输出字典
    outputDict = {
        'title'  : titleName,
        'legend' : legendList,
        'color'  : colorList,
        'xlabel' : xLabel,
        'yname'  : yUnit,
        'series' : seriesList
    }

    ## 输出字典转字符串
    outputStr = json.dumps(
        outputDict,
        ensure_ascii = False
    )

    ## 存储结果到数据库
    mysql_update(
        host     = mysql_conn.host,
        user     = mysql_conn.user,
        passwd   = mysql_conn.passwd,
        port     = mysql_conn.port,
        db       = mysql_conn.db,
        tb       = mysql_conn.tb,
        name     = event.label,
        data     = outputStr,
        unixTime = int(time.time())
    )
Beispiel #2
0
def main():
    ## 从yaml列表中获取数据
    filterKey = yamlDict.get('filter')
    colorList = yamlDict.get('colorList')
    titleName = yamlDict.get('titleName')
    yUnit = yamlDict.get('yUnit')
    divUnit = yamlDict.get('divUnit') or 1

    ## 取出本月开始时间
    clockList = pre_twelve_month()
    startUtime = max(max(x) for x in clockList)

    ## mysql连接信息
    db = zbxdb_conn.db
    tb = zbxdb_conn.tb
    querySQL = nowport10.querySQL

    ## 查询语句
    sql = querySQL.format(db, tb, startUtime, filterKey)

    ## 生成数据列表
    dataList = data_query(sql)

    ## 汇总数据列表和阴影列表
    dataList += stealth_list(dataList)

    ## 生成标签列表
    legendList = [x.get('name') for x in dataList]

    ## 生成输出字典
    outputDict = {
        'title': titleName,
        'label': legendList,
        'color': colorList,
        'data': dataList
    }

    ## 输出字典转字符串
    outputStr = json.dumps(outputDict, ensure_ascii=False)

    ## 存储结果到数据库
    mysql_update(host=mysql_conn.host,
                 user=mysql_conn.user,
                 passwd=mysql_conn.passwd,
                 port=mysql_conn.port,
                 db=mysql_conn.db,
                 tb=mysql_conn.tb,
                 name=nowport10.label,
                 data=outputStr,
                 unixTime=int(time.time()))
Beispiel #3
0
def main():
    ## 从yaml列表中获取数据
    textTagList = yamlDict.get('textTagList')
    legendList  = [ x.get('name') for x in textTagList ]
    colorList   = yamlDict.get('colorList')
    titleName   = yamlDict.get('titleName')
    yUnit       = yamlDict.get('yUnit')
    divUnit     = yamlDict.get('divUnit') or 1

    ## 获取之前一年的月份列表
    clockList = pre_twelve_month()

    ## 生成X轴刻度列表
    dataList=[
        {
            'name': x.get('name'),
            'value':data_list(x,clockList,divUnit)
        }
        for x in textTagList
    ]

    ## 生成输出字典
    outputDict = {
        'title' : titleName,
        'label' : legendList,
        'color' : colorList,
        'data'  : dataList
    }

    ## 输出字典转字符串
    outputStr = json.dumps(
        outputDict,
        ensure_ascii = False
    )

    ## 存储结果到数据库
    mysql_update(
        host     = mysql_conn.host,
        user     = mysql_conn.user,
        passwd   = mysql_conn.passwd,
        port     = mysql_conn.port,
        db       = mysql_conn.db,
        tb       = mysql_conn.tb,
        name     = nowevent.label,
        data     = outputStr,
        unixTime = int(time.time())
    )