{"id":20326054,"url":"https://github.com/matteoguadrini/followmail","last_synced_at":"2026-03-11T14:34:38.455Z","repository":{"id":241470640,"uuid":"805302786","full_name":"MatteoGuadrini/followmail","owner":"MatteoGuadrini","description":"Postfix log parser to follow a mail address","archived":false,"fork":false,"pushed_at":"2025-05-23T07:20:23.000Z","size":84,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-22T13:06:37.282Z","etag":null,"topics":["log","logging","logparser","maillog","postfix","postfixadmin","python","python3"],"latest_commit_sha":null,"homepage":"https://matteoguadrini.github.io/followmail","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MatteoGuadrini.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGES.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.md","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-05-24T09:44:02.000Z","updated_at":"2025-05-23T07:23:10.000Z","dependencies_parsed_at":"2024-06-28T08:40:41.761Z","dependency_job_id":"0bc0857f-ed9c-4bb6-9d4c-71a585523bee","html_url":"https://github.com/MatteoGuadrini/followmail","commit_stats":null,"previous_names":["matteoguadrini/followmail"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/MatteoGuadrini/followmail","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MatteoGuadrini%2Ffollowmail","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MatteoGuadrini%2Ffollowmail/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MatteoGuadrini%2Ffollowmail/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MatteoGuadrini%2Ffollowmail/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MatteoGuadrini","download_url":"https://codeload.github.com/MatteoGuadrini/followmail/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MatteoGuadrini%2Ffollowmail/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261296913,"owners_count":23137218,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["log","logging","logparser","maillog","postfix","postfixadmin","python","python3"],"created_at":"2024-11-14T19:42:46.165Z","updated_at":"2026-03-11T14:34:38.448Z","avatar_url":"https://github.com/MatteoGuadrini.png","language":"Python","funding_links":["https://www.paypal.me/guos"],"categories":[],"sub_categories":[],"readme":"# `followmail`\n\n_followmail_ is a command line utility that parse a postfix log file (also gzipped) and follow pathway of specific mail,\nin **to** or **from** fields.\n\n## Installation\n\nTo install _followmail_, follow this:\n\n```console\n# With pypi\npip install followmail\n\n# With git\ngit clone https://github.com/MatteoGuadrini/followmail.git \u0026\u0026 cd followmail\npip install .\n```\n\n## Command arguments\n\n`followmail` have many command line arguments. They are explained in this table:\n\n| short | long           | description                       | args          |\n|-------|----------------|-----------------------------------|---------------|\n| -v    | --verbose      | Print with verbosity              |               |\n| -t    | --to           | Email address into **to** field   | Mail address  |\n| -f    | --from         | Email address into **from** field | Mail address  |\n| -l    | --maillog      | Input maillog file                | File path     |\n| -q    | --queue        | Name of postfix queue             | Name of queue |\n| -m    | --max-lines    | Max lines to print                | Number        |\n| -D    | --sortby-date  | Sort lines by date                |               |\n| -Q    | --sortby-queue | Sort lines by queue               |               |\n| -D    | --sortby-server| Sort lines by server              |               |\n| -c    | --csv          | Print in csv format               |               |\n| -j    | --json         | Print in json format              |               |\n\n## Examples\n\n1. Search into **to** field the email _other@example.com_:\n\n    ```bash\n    followmail -t other@example.com\n    ```\n\n2. Search into **from** field the email _other@example.com_:\n\n    ```bash\n    followmail -f other@example.com\n    ```\n\n3. Search both **from** and **to** fields:\n\n    ```bash\n    followmail -f other@example.com -t other2@example.com\n    ```\n   \n4. Filter per queue\n\n   ```bash\n    followmail -f other@example.com -t other2@example.com -q \"postfix/in\"\n    ```\n   \n5. Select archived log\n\n   ```bash\n    followmail -f other@example.com -t other2@example.com -l \"/var/log/maillog-20240709.tar.gz\"\n    ```\n   \n6. Select max 20 max lines\n\n   ```bash\n    followmail -f other@example.com -t other2@example.com -m 20\n    ```\n\n7. Sort results by date, queue or server\n\n   ```bash\n    followmail -f other@example.com -t other2@example.com -D\n    followmail -f other@example.com -t other2@example.com -Q\n    followmail -f other@example.com -t other2@example.com -S\n    ```\n\n8. Print result in CSV format\n\n   ```bash\n    followmail -f other@example.com -t other2@example.com -c\n    ```\n\n9. Print result in JSON format\n\n   ```bash\n    followmail -f other@example.com -t other2@example.com -j\n    ```\n\n10. Debugging\n\n    ```bash\n     followmail -f other@example.com -t other2@example.com -v\n     ```\n\n\n## Open source\n\n_followmail_ is an open source project. Any contribute, It's welcome.\n\n**A great thanks**.\n\nFor donations, press this\n\nFor me\n\n[![paypal](https://www.paypalobjects.com/en_US/i/btn/btn_donateCC_LG.gif)](https://www.paypal.me/guos)\n\nFor [Telethon](http://www.telethon.it/)\n\nThe Telethon Foundation is a non-profit organization recognized by the Ministry of University and Scientific and\nTechnological Research.\nThey were born in 1990 to respond to the appeal of patients suffering from rare diseases.\nCome today, we are organized to dare to listen to them and answers, every day of the year.\n\n[Adopt the future](https://www.ioadottoilfuturo.it/)\n\n## Treeware\n\nThis package is [Treeware](https://treeware.earth). If you use it in production,\nthen we ask that you [**buy the world a tree**](https://plant.treeware.earth/matteoguadrini/mkpl) to thank us for our\nwork.\nBy contributing to the Treeware forest you’ll be creating employment for local families and restoring wildlife habitats.\n\n[![Treeware](https://img.shields.io/badge/dynamic/json?color=brightgreen\u0026label=Treeware\u0026query=%24.total\u0026url=https%3A%2F%2Fpublic.offset.earth%2Fusers%2Ftreeware%2Ftrees)](https://treeware.earth)\n\n## Acknowledgments\n\nThanks to Mark Lutz for writing the _Learning Python_ and _Programming Python_ books that make up my python foundation.\n\nThanks to Kenneth Reitz and Tanya Schlusser for writing the _The Hitchhiker’s Guide to Python_ books.\n\nThanks to Dane Hillard for writing the _Practices of the Python Pro_ books.\n\nSpecial thanks go to my wife, who understood the hours of absence for this development.\nThanks to my children, for the daily inspiration they give me and to make me realize, that life must be simple.\n\nThanks, Python!","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmatteoguadrini%2Ffollowmail","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmatteoguadrini%2Ffollowmail","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmatteoguadrini%2Ffollowmail/lists"}