我正在使用log4net登錄到一個sql表。我希望能夠只保留最近的n天,或者表中最近的n個條目。這可能與log4net?如何只保留log4net sql表中最近的n個條目?
0
A
回答
0
我想通了,對於commandText
爲AdoNetAppender我命令文本設置爲:
<commandText value="INSERT INTO Log ([Date],[Thread],[Level],[Logger],[Message],[Exception]) VALUES (@log_date, @thread, @log_level, @logger, @message, @exception); DELETE FROM [Log] WHERE [Date] < DATEADD(dd, -28, GETDATE())" />
感覺哈克,但它的作品。我會在這裏發佈,如果我找到一個整潔的解決方案。
2
Log4net沒有內置此功能。但這樣的任務可能最適合作爲一項工作,例如。在SSIS中(如果您正在運行MS SQL Server)或類似的工具。
0
我知道我遲到了......但看着ilivewithian的解決方案,我會同意Peter Lillevold的觀察,認爲它會導致記錄過程中的額外負載是不可取的。
在數據庫中使用觸發器是否可以自動刪除舊項目?當然,你需要一個支持觸發器的數據庫,但它看起來像大多數現代的(包括像SQLite和PostgreSQL這樣的開放源碼的)。
相關問題
- 1. 只保留N個最近記錄的表格?
- 2. 備份腳本:如何保留最後的N個條目?
- 3. SQL加入一到多個表,只選擇最近的條目
- 4. SQL:從最近的N個(兩個)條目獲得avg結果
- 5. 如何獲取子查詢組中最近的n個條目?
- 6. MySQL最近n個條目,升序?
- 7. 如何讓log4net只保留最後X天的日誌?
- 8. 保持最新的n條目在表
- 9. 如何更新SQL表中的列如果條目是重複的並保留最新的條目?
- 10. SQL只插入表格,如何只選擇最新的條目
- 11. 如何保留僅最後n個對象的列表?
- 12. 如何保留最後的10個條目並刪除剩餘的條目?
- 13. 只保留第一個20個條目中的字符串
- 14. 僅存儲最近n個條目的字典或類似數據結構?
- 15. Python RotatingFileHandler:獲取n個最近的條目
- 16. SQL在最近的日期找到最後一個條目
- 17. 只保存最後一個條目
- 18. 如何從n個表中只獲得n條記錄
- 19. 如何從日誌文件中保留最後n個行php
- 20. 如何保存隔離存儲器中最近的文本條目列表。
- 21. 如何將log4j配置爲僅保留最近n天的日誌文件?
- 22. 刪除SQL重複數據保留最早的條目
- 23. 如何獲取最新的獲取最近的7個條目
- 24. SQL刪除所有行的時間戳比(現在 - x天)要早,除了保留最近的n條記錄
- 25. 如何獲取第n個最近值?
- 26. Python的過濾:只保留最近的蟒蛇MacPort
- 27. 我如何只從表中提取最後一個條目
- 28. Rails每天只保留多條記錄中的一條。保留最後一個,刪除其餘部分
- 29. Python:只保留匹配的項目並在列表中保留其餘項目
- 30. 從表格中檢索最近的N條記錄
大聲笑,想到這一點,但認爲我不會建議。由於它會將更多負載加入日誌記錄過程,因此我會在單獨的進程中進行帶外刪除。 – 2010-02-26 14:25:04
作爲一般原則,我認爲你是對的,但由於我們的日誌記錄大部分將會相當低,我認爲這是一個可以接受的開銷。如果我錯了,我們可以把它拉出來並使用你的建議。 – ilivewithian 2010-02-26 14:55:59
這樣做是不對的。特別是考慮寫一個sql作業有多容易。 – Roubachof 2013-07-22 09:51:16