python读取服务器日志

1. 代码 

import paramiko


def get_server_log():
    hostname = ""
    port = 22
    username = ""
    password = ""
    client = paramiko.SSHClient()
    client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
    client.connect(hostname, port, username, password, compress=True)
    sftp_client = client.open_sftp()
    remote_file = sftp_client.open("/opt/xxx/logs/error_log")
    try:
        count = 0
        for line in remote_file:
            if 'Traceback' in line:
                print(line)
                count = count + 1
        print(count)
    finally:
        remote_file.close()


if __name__ == "__main__":
    get_server_log()
    print('****done')

2. 验证Traceback在日志文件出现次数

grep -F "Traceback" -R logs/error_log

3. 普通用户登录时可能报sftp权限错误,可以先给改目录分配用户权限

chown -R username:username logs/error_log

猜你喜欢

转载自blog.csdn.net/baidu_30809315/article/details/89291634