python實現(xiàn)tail實時查看服務器日志示例
我就廢話不多說了,直接上代碼吧!
import paramiko
from paramiko_expect import SSHClientInteraction
host = your host
port = your port
username = your un
# 自行修改輸出函數(shù)
json_list = []
def output_func(msg):
sys.stdout.write(msg)
json_list.append(msg)
sys.stdout.flush()
def conn_tail(path):
try:
client = paramiko.SSHClient()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy)
key_file = 'id_rsa_2048'
key = paramiko.RSAKey.from_private_key_file(key_file, 'yourpwd')
client.connect(host, port, username, key_filename=key_file)
interact = SSHClientInteraction(client, timeout=10, display=False)
interact.send('sudo su\n')
interact.expect(prompt)
interact.send('tail -f %s' % path)
# log_name = path.split('/')[-1].split('.')[0]
# interact.tail(line_prefix=log_name + ': ',output_callback=output_func)
interact.tail( output_callback=output_func)
1.使用了paramiko_expect模塊,安裝方式
# from pypi pip install paramiko-expect # from source pip install git+https://github.com/fgimian/paramiko-expect.git
2.采用id_rsa密鑰方式登錄
3.由于公司服務器需要切換賬號,所以需要先執(zhí)行sudo xxx操作
4.如果需要同時tail幾個日志,可以開多線程
5.如果需要自己對服務器的日志進行處理,而非簡單的控制臺展示,則需要自行修改output_callback函數(shù)
以上這篇python實現(xiàn)tail實時查看服務器日志示例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
python pow函數(shù)的底層實現(xiàn)原理介紹
這篇文章主要介紹了python pow函數(shù)的底層實現(xiàn)原理介紹,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-03-03
Django+uni-app實現(xiàn)數(shù)據(jù)通信中的請求跨域的示例代碼
這篇文章主要介紹了Django+uni-app實現(xiàn)數(shù)據(jù)通信中的請求跨域的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-10-10
Python opencv相機標定實現(xiàn)原理及步驟詳解
這篇文章主要介紹了Python opencv相機標定實現(xiàn)原理及步驟詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2020-04-04
python hash每次調(diào)用結(jié)果不同的原因
這篇文章主要介紹了python hash每次調(diào)用結(jié)果不同的原因,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2019-11-11
python selenium 無界面瀏覽器的實現(xiàn)
有時我們不想讓瀏覽器窗口跳出來,而是想在后臺進行操作,這就需要用到無界面瀏覽器,本文主要介紹了python selenium 無界面瀏覽器的實現(xiàn),具有一定的參考價值,感興趣的可以了解一下2023-10-10
Python3爬蟲中關(guān)于Ajax分析方法的總結(jié)
在本篇文章里小編給大家整理的是一篇關(guān)于Python3爬蟲中關(guān)于Ajax分析方法的總結(jié),需要的朋友們可以學習下。2020-07-07

