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中endswith()函数的基本使用
Apr 07 Python
浅谈python内置变量-reversed(seq)
Jun 21 Python
python代码实现ID3决策树算法
Dec 20 Python
对python模块中多个类的用法详解
Jan 10 Python
Python查找最长不包含重复字符的子字符串算法示例
Feb 13 Python
python字符串和常用数据结构知识总结
May 21 Python
使用Python OpenCV为CNN增加图像样本的实现
Jun 10 Python
python 循环数据赋值实例
Dec 02 Python
Spark处理数据排序问题如何避免OOM
May 21 Python
python suds访问webservice服务实现
Jun 26 Python
Python实现提取PDF简历信息并存入Excel
Apr 02 Python
python 判断字符串当中是否包含字符(str.contain)
Jun 01 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编写的导航条程序
2006/10/09 PHP
php实现字符串翻转的方法
2015/03/27 PHP
Linux安装配置php环境的方法
2016/01/14 PHP
javascript中的作用域scope介绍
2010/12/28 Javascript
JS将数字转换成三位逗号分隔的样式(示例代码)
2014/02/19 Javascript
javascript图片切换综合实例(循环切换、顺序切换)
2016/01/13 Javascript
JavaScript File分段上传
2016/03/10 Javascript
JS实现添加,替换,删除节点元素的方法
2016/06/30 Javascript
angular.js分页代码的实例
2016/07/27 Javascript
xmlplus组件设计系列之图标(ICON)(1)
2017/05/05 Javascript
vue项目中使用ueditor的实例讲解
2018/03/05 Javascript
angularjs通过过滤器返回超链接的方法
2018/10/26 Javascript
微信小程序常用简易小函数总结
2019/02/01 Javascript
NodeJs crypto加密制作token的实现代码
2019/11/15 NodeJs
python进阶教程之词典、字典、dict
2014/08/29 Python
对Python捕获控制台输出流的方法详解
2019/01/07 Python
scrapy-redis源码分析之发送POST请求详解
2019/05/15 Python
Django实现跨域的2种方法
2019/07/31 Python
python3 实现的对象与json相互转换操作示例
2019/08/17 Python
django 数据库 get_or_create函数返回值是tuple的问题
2020/05/15 Python
HTML5 embed标签定义和用法详解
2014/05/09 HTML / CSS
Desigual美国官方网站:西班牙服装品牌
2019/03/29 全球购物
德国拖鞋网站:German Slippers
2019/11/08 全球购物
介绍一下Transact-SQL中SPACE函数的用法
2015/09/01 面试题
css animation配合SVG制作能量流动效果
2021/03/24 HTML / CSS
导师推荐信范文
2014/05/09 职场文书
公司担保书范文
2014/05/21 职场文书
企业党员个人自我评价
2014/09/20 职场文书
群众路线学习笔记范文
2014/11/06 职场文书
感谢信的格式
2015/01/21 职场文书
任命书标准格式
2015/03/02 职场文书
总账会计岗位职责
2015/04/02 职场文书
2015年度村委会工作总结
2015/04/29 职场文书
毕业班班主任工作总结2015
2015/07/23 职场文书
Oracle 死锁的检测查询及处理
2021/09/25 Oracle
详解Alibaba Java诊断工具Arthas查看Dubbo动态代理类
2022/04/08 Java/Android