Làm cách nào tôi có thể tạo số liệu thống kê email từ bộ đệm tiêu đề mutt?


12

Khi được cấu hình phù hợp ( set header_cache=) mutt lưu các tiêu đề thư trong tệp bộ đệm. Điều đó có thể được sử dụng để tạo số liệu thống kê thư. Có ai biết một cái gì đó về định dạng tập tin? Có bất kỳ công cụ có sẵn để trích xuất thông tin có trong? (Bên cạnh đó strings, grep, awkvà những thứ tương tự)



Loại thống kê nào bạn muốn tạo sẽ không được trả lời tốt hơn bằng các tệp nhật ký máy chủ thư?
Caleb

1
@Caleb Tôi có số liệu thống kê rất cơ bản, ví dụ: min / avg / max mail mỗi năm / tháng / ngày, hầu hết người nhận / người gửi thường xuyên, v.v. Không phải ai cũng có quyền truy cập vào nhật ký máy chủ thư, vì vậy đây không phải lúc nào cũng là một tùy chọn.
artistoex

Câu trả lời:


4

Câu trả lời ngắn:

hoàn toàn có khả năng bộ đệm sẽ không toàn diện. Nếu bạn xóa thư và hcache sau đó sẽ tính toán lại bộ đệm tiêu đề cho hộp thư đó, số liệu thống kê của bạn sẽ không bao gồm thư từ trước khi xóa.

Nếu bạn không có quyền truy cập vào nhật ký thư cho máy chủ của mình, bạn có quyền truy cập vào cơ chế lọc không, ví dụ như procmail? Bạn có thể sử dụng điều đó để tạo ra một bản ghi thay thế để phân tích.

Nếu không, bạn có thể thăm dò hộp thư của mình với một chương trình có thể tạo ra nhật ký nhận thư không? Một cái gì đó như bộ lọc offlineimap hoặc fetchmail / retchmail kết hợp với một số băm và bộ đệm.

Câu trả lời dài hơn:

Tệp bộ đệm là cơ sở dữ liệu kiểu DBM. Tùy thuộc vào các tùy chọn xây dựng chính xác cho mutt của bạn, nó có thể là một trong những QDBM , tủ tokyo , GDBM hoặc Berkeley DB (BDB); tất cả đều thực hiện một biến thể API của BDB.

Tôi tin rằng không có khả năng bạn có thể đọc DB một cách đáng tin cậy trừ khi bạn sử dụng triển khai thư viện phù hợp. lddcho tôi biết mutt địa phương của tôi sử dụng việc thực hiện nội các tokyo:

$ ldd /usr/bin/mutt
…
libtokyocabinet.so.8 => /usr/lib/libtokyocabinet.so.8 (0xb74f2000)
…

Sau đó, bạn sẽ cần phải viết một chương trình, sử dụng thư viện đó, để truy vấn BDB được lưu trữ trong tệp bộ đệm. Có các ràng buộc cho Perl, Ruby, Lua, Java và tất nhiên C.

Dường như các tiêu đề được lưu trữ dưới dạng các giá trị trong DB, được lập chỉ mục bởi CRC. Từ những gì tôi có thể nói, CRC có nguồn gốc từ đường dẫn đến hộp thư, ngụ ý rằng các tiêu đề được lưu trữ là tiêu đề cho tất cả thư trong hộp thư đó . Vì vậy, chương trình của bạn về cơ bản sẽ kết thúc với một bộ đệm chứa tất cả các tiêu đề cho tất cả thư trong một hộp thư nhất định. Tôi không nghĩ rằng nó sẽ hữu ích hơn nhiều so với việc lấy các tiêu đề từ tất cả các thư hiện có trong hộp thư của bạn (và đưa ra "câu trả lời ngắn" ở trên, không được đảm bảo là đáng tin cậy hơn).

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.