① .NET中怎麼記錄軟體的操作日誌
用C#寫的。日誌文件可保存在資料庫中也可保存為.TXT文件,只要能實現就行。請各位灌水的大哥就不要浪費時間了,謝謝。補充:比如我在軟體中新加了一條記錄,日誌文件就應該記錄下這些信息:操作員、插入記錄編號(名稱)、操作時間請幫忙來段對日誌寫、讀、刪的操作代碼。滿意答案 熱心問友 2009-09-17做一個記錄日誌事件的類EventLogHelper 定義一個對外的介面SaveLog(string 日誌標題,string 日誌內容,int 操作人ID)如何保存.txt文本就很簡單了 用File.WriteAllText 在你希望保存日誌的地方 調用這個事件就行了 補充: 或者使用觸發器 在表變化時保存日誌 也不難 追問: 那樣只能記錄出對表的操作,不能記錄用戶對軟體的操作 回答: 那就做一個日誌類 我公司就是採用這方法 類里封裝好以後 使用界面只管調用 追問: 能把代碼借我看一下嗎,每一次做日誌,好多都好陌生。 回答: 給你看也沒意義 業務需求不一樣 日誌需要保存的也不一樣思路很簡單啊 我用語言描述下日誌類的寫法嘛 public static LogHelper{ public static SaveLog(操作員,插入記錄編號(名稱),操作內容) { System.IO.File.WriteAllText("日誌文件的路徑","["+DateTime.Now.ToShortDateString()+"]"+操作員+操作內容+.....寫上你所有想記錄的內容) }}然後在你希望保存日誌的地方插上這個函數的調用,如保存時:LogHelper.SaveLog("小張","。。。記錄號","新增記錄"); 追問: 這個文件是保存在資料庫中的嗎? 回答: 保存到本地文件,如果想保存到資料庫 就把System.IO.File.WriteAllText這地方替換成保存資料庫里的語句噻 追問: 謝謝了哈,我先試下 其他回答(1)零Q幣 10級2009-09-17示例代碼就難說了要記錄軟體的操作日誌,必須在每個實現功能的方法裡面都加上相應的記錄代碼比如登陸驗證那裡,在登錄成功之後,可以把用戶名,登陸時間,登陸IP之類的信息保存起來,這個就是作為登陸的操作日誌
② c盤根目錄下有個log.txt 不知道是啥用,是不是病毒殘留什麼的
可能是某個軟體的日誌記錄文件,日誌文件都會隨著軟體的運行不斷增長的,而且內容重復性也很大,而且軟體一運行,它就會自動建立的。可以用 notepad 打開來看它的內容,或是DOS下用type log.txt 或 more log.txt命令都可看它的內容。看看能不能找出是那個軟體輸出的,看你的情況,開機運行的軟體的可能比較大。 出現亂碼,也可能是編碼格式的問題,軟體可能會自定義,文件的內容也可能就是些二進制流,所以以文本方式打開,不一定是有意義的內容。 病毒的可能性也是有的,如果不放心可以用殺軟進行查殺或者上傳到 http://www.virustotal.com/zh-cn 進行掃描。 應該問題不大,我的機子也常會出現這樣的文件。 /////////////////////////////////////////////////////////////////////////到網上找一個日誌文件的分析工具(直接找一個文件的分析工具也行),分析一個那個文件。或者你找找看如何分析日誌文件,應該沒什麼大問題,機子能正常運行就好!再有看著不順心,那就把裡面的東西都刪了,再把文件屬性改為只讀+隱藏放在那!如果確定那不是病毒,就別管它了吧! ////////////////////////////////////////干什麼?你想知道生成文件的代碼嗎?自己寫個程序?軟體或說是程序通過使用一些類,調用相應的方法,就可以新建一個文件,然後設置要記錄到文件中的信息的格式,寫入文件既可。就這樣,具體代碼網上查! /////////////////////////////////////////用優化大師看一下你所有軟體的安裝日期,再估計一下,你那個log.txt文件最早出現是什麼時候,與軟體的安裝日期比較一下,大概推測一下,如果有幾個軟體都有可能,那就一個個謝了,再安裝,先別刪那個文件,看你謝了一個軟體後,那個文件是不是沒了,如果沒了,那就是那個軟體創建的了。要果一直都還在,那就再重裝每個軟體,看一下,裝過那個軟體之後,log.txt又出來了。更好的方法,你自已想想看,根據你電腦的情況。--------------------還有你可以到網上找一個 「文件監視器」,監視一下你那個文件的創建,具體怎麼用,你自個上網查,應該可以追蹤出文件的創建源(創建文件的那個軟體)。
③ log4 記錄多個日誌文件怎麼配置 c
實現了基本的文件操作功能,構造函數如下:
FileAppender(const log4cplus::tstring& filename, LOG4CPLUS_OPEN_MODE_TYPE mode = LOG4CPLUS_FSTREAM_NAMESPACE::ios::trunc, bool immediateFlush = true);
filename : 文件名
mode : 文件類型,可選擇的文件類型包括app、ate、binary、in、out、trunc,因為實際上只是對 stl的一個簡單包裝,呵呵,這里就不多講了。預設是trunc,表示將先前文件刪除。
immediateFlush :緩沖刷新標志,如果為true表示每向文件寫一條記錄就刷新一次緩存,否則直到FileAppender 被關閉或文件緩存已滿才更新文件,一般是要設置true的,比如你往文件寫的過程中出現 了錯誤(如程序非正常退出),即使文件沒有正常關閉也可以保證程序終止時刻之前的所有 記錄都會被正常保存。