V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
fsckzy
V2EX  ›  Python

想用 python 获取几十台服务器日志中指定关键词内容

  •  
  •   fsckzy · 2016-12-08 16:24:10 +08:00 · 3403 次点击
    这是一个创建于 2893 天前的主题,其中的信息可能已经有所发展或是发生改变。

    求给点思路

    几十台服务器,同样的路径,我需要看看 log 文件里面有没有出现 127.0.0.1 这个 ip

    20 条回复    2016-12-09 13:09:19 +08:00
    clino
        1
    clino  
       2016-12-08 16:28:46 +08:00
    ansible
    erevus
        2
    erevus  
       2016-12-08 16:55:57 +08:00
    elk
    wyntergreg
        3
    wyntergreg  
       2016-12-08 16:58:06 +08:00
    不建议用 python 搜索关键词,可以用 python 把文件拿过来用文本工具进行搜索
    izoabr
        4
    izoabr  
       2016-12-08 17:04:12 +08:00
    还不如脚本 ssh 挨个上去 grep '127.0.0.1'然后回传或者写入新文件呢
    knightdf
        5
    knightdf  
       2016-12-08 17:08:19 +08:00   ❤️ 1
    for ssh grep 不久完了
    vus520
        6
    vus520  
       2016-12-08 17:16:37 +08:00
    salt(salt-ssh)、 ansible 不好么, grep 出来,然后放到共享目录里
    czheo
        7
    czheo  
       2016-12-08 17:32:55 +08:00
    加上 xargs -P 可以并发哦。
    est
        8
    est  
       2016-12-08 17:50:31 +08:00
    ansible
    ywgx
        9
    ywgx  
       2016-12-08 18:16:38 +08:00 via iPhone
    楼主,我给你总结一下你的需求?

    “如何管理大量服务器集群?”
    ywgx
        10
    ywgx  
       2016-12-08 18:17:07 +08:00 via iPhone
    kinghs
        11
    kinghs  
       2016-12-08 18:21:30 +08:00
    paramiko 可破
    SlipStupig
        12
    SlipStupig  
       2016-12-08 18:29:43 +08:00
    @erevus 这么点小需求,用 elk 学习成本太高了
    cat /your/dir/*.log | sort | uniq | xargs -n 10 | grep -e ".*127.0.0.1.*",如果是远程的话可以用 rsync 同步一下就行了
    iyaozhen
        13
    iyaozhen  
       2016-12-08 18:32:19 +08:00 via Android
    简单的需要。找一台跳板机,添加信任。然后登录到各个机器上去执行 grep
    skydiver
        14
    skydiver  
       2016-12-08 18:52:44 +08:00
    polysh
    lgpqdwjh
        15
    lgpqdwjh  
       2016-12-08 18:53:09 +08:00
    ansible playbook or command module
    ty89
        16
    ty89  
       2016-12-08 19:04:38 +08:00
    pssh
    v2014
        17
    v2014  
       2016-12-08 22:22:13 +08:00
    fabric
    Livid
        18
    Livid  
    MOD
       2016-12-08 22:24:36 +08:00   ❤️ 1
    1. 如果是一次性需求,用 Ansible
    2. 如果是持续需求,把日志推到 papertrailapp.com 然后为 127.0.0.1 这个关键词设定一个 alert
    cxmtime
        19
    cxmtime  
       2016-12-09 03:37:38 +08:00
    和楼主有类似德需求,用 ruby 写了一个工具,自己用的顺手。
    hanbaobao2005
        20
    hanbaobao2005  
       2016-12-09 13:09:19 +08:00
    嗯 同 15 楼, 建议 Ansible + log 分析
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2680 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 06:14 · PVG 14:14 · LAX 22:14 · JFK 01:14
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.