python自动化工具日志查询分析脚本代码实现


Posted in Python onNovember 26, 2013

受控节点slave.py

import socket
import re
class Log(object):
    file_list=['access.log','C:\\access.log']
    master_ip='192.168.0.103'
    def __init__(self):
        s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
        s.bind(('',3333))
        s.listen(1)
        while True:
            conn,addr=s.accept()
            print addr[0]
            if addr[0]==self.master_ip:
                reg=conn.recv(1024)
                result=self.all_log(reg)
                conn.sendall(result)
            conn.close()
    def all_log(self,reg):
        logs=''
        for f in self.file_list:
            logs+='\n'+self.log_match(f,reg)
        return logs
    def log_match(self,f,reg):
        log_result='------------------------'+f+'------------------------'+'\n'
        fo=open(f,'r')
        line=fo.readline()
        rp=re.compile(reg)
        while line!='':
            log_match=rp.match(line)
            if log_match:
                log_result+='\n'+log_match.group()
            line=fo.readline()
        return log_result
if __name__=='__main__':
    ds=Log()

主控节点master.py

import socket
class SlvCluster(object):
    ip_list=['127.0.0.1']
    def __init__(self,reg):
        for ip in self.ip_list:
            self.single_slv(ip,reg)
    def single_slv(self,slv_ip,reg):
        s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
        s.connect((slv_ip,3333))
        s.sendall(reg)
        print '-----------------------'+slv_ip+'--------------------------'
        print s.recv(102400)
        s.close()
if __name__=='__main__':
    reg=raw_input('Input the regular expression:')
    print '-----------Regular Expression: '+reg+'-----------------'
    sc=SlvCluster(reg)
Python 相关文章推荐
python求列表交集的方法汇总
Nov 10 Python
Python中urllib2模块的8个使用细节分享
Jan 01 Python
Python的组合模式与责任链模式编程示例
Feb 02 Python
Python 爬虫之超链接 url中含有中文出错及解决办法
Aug 03 Python
查看django版本的方法分享
May 14 Python
python实现栅栏加解密 支持密钥加密
Mar 20 Python
python从list列表中选出一个数和其对应的坐标方法
Jul 20 Python
Python实现图像的垂直投影示例
Jan 17 Python
Python3爬虫中关于中文分词的详解
Jul 29 Python
python爬取音频下载的示例代码
Oct 19 Python
OpenCV-Python 实现两张图片自动拼接成全景图
Jun 11 Python
Python获取江苏疫情实时数据及爬虫分析
Aug 02 Python
python翻译软件实现代码(使用google api完成)
Nov 26 #Python
python高并发异步服务器核心库forkcore使用方法
Nov 26 #Python
跨平台python异步回调机制实现和使用方法
Nov 26 #Python
python连接池实现示例程序
Nov 26 #Python
使用python BeautifulSoup库抓取58手机维修信息
Nov 21 #Python
python BeautifulSoup使用方法详解
Nov 21 #Python
python装饰器使用方法实例
Nov 21 #Python
You might like
php如何调用webservice应用介绍
2012/11/24 PHP
用函数式编程技术编写优美的 JavaScript_ibm
2008/05/16 Javascript
JavaScript中的this实例分析
2011/04/28 Javascript
JS实现图片翻书效果示例代码
2013/09/09 Javascript
javascript获取函数名称、函数参数、对象属性名称的代码实例
2014/04/12 Javascript
JavaScript中Math.SQRT2属性的使用详解
2015/06/14 Javascript
基于JavaScript实现移动端点击图片查看大图点击大图隐藏
2015/11/04 Javascript
jquery实现移动端点击图片查看大图特效
2020/09/11 Javascript
基于jQuery实现鼠标点击导航菜单水波动画效果附源码下载
2016/01/06 Javascript
使用Bootstrap框架制作查询页面的界面实例代码
2016/05/27 Javascript
轻松实现js选项卡切换效果
2016/09/24 Javascript
JS中type="button"和type="submit"的区别
2017/07/04 Javascript
微信小程序实现点击按钮修改文字大小功能【附demo源码下载】
2017/12/06 Javascript
elementUI 设置input的只读或禁用的方法
2018/10/30 Javascript
基于Vue实现电商SKU组合算法问题
2019/05/29 Javascript
Electron vue的使用教程图文详解
2019/07/05 Javascript
浅谈vue-router路由切换 组件重用挖下的坑
2019/11/01 Javascript
压缩包密码破解示例分享(类似典破解)
2014/01/17 Python
Pandas 合并多个Dataframe(merge,concat)的方法
2018/06/08 Python
python实现任意位置文件分割的实例
2018/12/14 Python
python 递归调用返回None的问题及解决方法
2020/03/16 Python
python 写一个水果忍者游戏
2021/01/13 Python
浅析HTML5的WebSocket与服务器推送事件
2016/02/19 HTML / CSS
Hotels.com加拿大:领先的在线住宿网站
2018/10/05 全球购物
德国的各种媒体在线商店:Thalia.de(书籍、电子书、玩具等)
2020/10/08 全球购物
年度考核评语
2014/01/19 职场文书
音乐器材管理制度
2014/01/31 职场文书
2014统计局民主生活会对照检查材料思想汇报
2014/10/02 职场文书
个人融资协议书
2014/10/02 职场文书
优秀教师事迹材料
2014/12/15 职场文书
初中家长评语和期望
2014/12/26 职场文书
领导视察通讯稿
2015/07/18 职场文书
小学生禁毒教育心得体会
2016/01/15 职场文书
技术入股协议书
2016/03/22 职场文书
应届毕业生的自我评价
2019/06/21 职场文书
Python爬虫进阶之Beautiful Soup库详解
2021/04/29 Python