1. 程式人生 > >python 檢測檔案,有異常資訊就傳送郵件

python 檢測檔案,有異常資訊就傳送郵件

import os
import smtplib 
from email.MIMEText import MIMEText
from email.Header import Header

mailto_list=["[email protected]"]
mail_host="smtp.qq.com" 
mail_user="[email protected]"
mail_pass="****"  
mail_postfix="qq.com"
cmd_="grep -wn 'ERROR' /home//log.log"

def cmd(cmd_):
    result = os.system(cmd_)
    if result == 0:
        return True
    return False;

def send_mail(to_list,sub,content):  
    me="hello"+"<"+mail_user+"@"+mail_postfix+">"  
    msg = MIMEText(content,_subtype='plain',_charset='gb2312')  
    msg['Subject'] = sub  
    msg['From'] = me  
    msg['To'] = ";".join(to_list)  
    try:  
        server = smtplib.SMTP()  
        server.connect(mail_host)  
        server.login(mail_user,mail_pass)  
        server.sendmail(me, to_list, msg.as_string())  
        server.close()  
        return True  
    except Exception, e:  
        print str(e)  
        return False  
    
if __name__ == "__main__":
    if cmd(cmd_) == True:
        print "error"
        send_mail(mailto_list,"log","error exists in /home/log.log")
    else:
        print "ok"
        send_mail(mailto_list,"log","no error exists in /home/log.log")
    
        
        


可以在linux 定時器中設定 crontab -e

30 3 * * * python /check.py

每天3點半執行操作


相關推薦

python 檢測檔案異常資訊傳送郵件

import os import smtplib from email.MIMEText import MIMEText from email.Header import Header mailto_list=["[email protected]"] mai

調用外部服務器時異常進行多次調用

進行 tac cep AR n) 成功 boolean alt 正常的 調用外部服務的時候,由於網絡或者對方服務的問題導致調用不同,這時候就需要多次進行嘗試調用, 但是最好不要無限制的調用,具體代碼如下: package com.cisp.file.test; publ

Sublime Text 3了Anaconda會如虎添翼

-h text 最有 tin 下載地址 cond sage efault 文檔 作為Python開發環境的Sublime Text 3,有了Anaconda就會如虎添翼。Anaconda是目前最流行也是最有威力的Python代碼提示插件。 操作步驟 1.打開packag

OllyDbg IDA pro強強聯合 從OllyDbg中載入IDA Pro輸出的map資訊檔案帶符號資訊除錯

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

php 寫入檔案日誌記錄資訊方法

/** * [write_log 寫入日誌] * @param [type] $data [寫入的資料] * @return [type] [description] */ function write_log($data){ $years = date('Y-m')

配置檔案並讀取資訊

新建一個proprerties的檔案 建立一個讀取檔案引數的工具類 package com.surekam.alarm.util; import java.io.*; import java.util.Properties; public class PropertiesUtil

定義一個xml檔案儲存班級資訊

xml檔案的功能:用來傳輸和儲存資料 案例: 編寫一個xml檔案,用來儲存班級的資訊,包括學生(姓名,年齡,城市,手機號)、老師(姓名,課程)、賬號資訊(賬號、密碼) 說明: 做文件宣告,宣告文件型別為xml,版本號,編碼 <?xml version="1.0" encodin

人工智慧現狀:只見人工不見智慧多少人工多少智慧?

【資料猿導讀】 當前人工智慧(AI)的現狀是呼聲很高,落地很少,“只見人工,不見智慧,有多少人工

判斷String字串中是否連續的數字連續的縮寫(比如:String str="1,2,3,7,10,11,12,13,14,15" 變為"1-3,7-7,10-15")

string newList=""; string str="1,2,3,7,10,11,12,13,14,15";//string字串 int min; int max; if (str!=null&&str

python匿名函式引數時無引數時返回多個引數時

lambda lambda 形參:返回式子 演練 應用場景 它和其它函式一起使用,一般不會獨立使用 特點 匿名函式不應該有複雜的邏輯,比如不應有if判斷,但可以有判斷的函式如startswith等。(或者使用三元表示式)。 匿函的核心是,冒號的右邊應該是

2018還沒有學python的小夥伴福利了(教程)

Python應該怎樣學習呢? 在這個資訊爆炸的時代,在網上隨手搜尋一個"零基礎怎麼入門Python"、“Python應該怎麼學習”、"Python學習難不難"都會出現非常非常多的資訊,這個時候很多小夥伴們,通常會被大量的資訊淹沒,難免會東一下西一下的學習。最終,學習了很長時間,卻還

判斷本地系統目錄下是否存在XML檔案如果不存在建立一個XMl檔案若存在在裡面執行新增資料

這是我為專案中寫的一個測試的例子, 假如,您需要這樣一個xml檔案, <?xml version="1.0" encoding="utf-8"?> <A> <a> <id>001</id> <name>le

python讀取檔案資料讀入為字元型數字轉換成數值型

import pandas as pdimport numpy as nppath='result.csv'order=open(path).readlines()//list型別,不過list裡存放的不是int型數值是字元型print(len(order))//獲取長度20

Python開啟檔案將list、numpy陣列內容寫入txt檔案

python儲存numpy資料:numpy.savetxt("result.txt", numpy_data); 儲存list資料:file=open('data.txt','w') file.wri

python監控檔案並且傳送告警郵件

一、配置檔案 import time,datetime TODAY = time.time() TIME_PATH = str(TODAY.year) + "/" + str(TODAY.month) + "/" + str(datetime.datetime.now(

Python 3 入門看這篇夠了

簡介 Python 是一種高層次的結合瞭解釋性、編譯性、互動性和麵向物件的指令碼語言。Python 由 Guido van Rossum 於 1989 年底在荷蘭國家數學和電腦科學研究所發明,第一個公開發行版發行於 1991 年。 特點 易於學習:Pyt

python比c多慢小測試

gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5) Python 2.7.3 #include <stdlib.h> #include &

【Maven jar】打包單個或多個檔案依賴jar包的將架包一起打包成一個jar包供別的專案引用

之前有一片文章,是打包單個java檔案的。這次想要將http://www.cnblogs.com/sxdcgaq8080/p/8398780.html  打包成jar包,發現這個java檔案中引用了多個第三方的jar,想要單獨進行編譯都無法通過,更不要說打包成jar了。 所以就營運而生了這個需求,怎麼打包單

python日誌記錄完整的異常資訊traceback stack

用python的異常處理和日誌可以完整的記錄程式發生異常時的出錯資訊。 這有賴於logging模組的強大和python的錯誤處理機制。 基本正規化是: try:     do-something-block except:     logger.exception("Ex

Python 備份檔案以及備份大檔案

今天分享一個很有用的小程式碼~ 就是關於檔案的備份 import os #匯入os模組 ori_file_name = r'E:\PYTHON\mayday.mp3' #輸入檔案路徑 if os.path.isfile(ori_file_name): #判斷該