{"id":13579028,"url":"https://github.com/DamienHarper/auditor","last_synced_at":"2025-04-05T20:32:54.809Z","repository":{"id":38242143,"uuid":"262427709","full_name":"DamienHarper/auditor","owner":"DamienHarper","description":"auditor, the missing audit log library","archived":false,"fork":false,"pushed_at":"2024-10-24T10:04:48.000Z","size":745,"stargazers_count":160,"open_issues_count":17,"forks_count":51,"subscribers_count":5,"default_branch":"master","last_synced_at":"2024-10-24T12:24:23.474Z","etag":null,"topics":["audit-bundle","audit-log","audit-logs","audit-trail","auditing-services","auditor","audits","diffs","doctrine","doctrine-audit","doctrine2","orm"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/DamienHarper.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"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}},"created_at":"2020-05-08T20:59:42.000Z","updated_at":"2024-10-24T09:52:52.000Z","dependencies_parsed_at":"2024-06-18T13:39:03.472Z","dependency_job_id":"0b017fed-9338-4f1e-b266-93e0e0aff16c","html_url":"https://github.com/DamienHarper/auditor","commit_stats":{"total_commits":258,"total_committers":24,"mean_commits":10.75,"dds":"0.17441860465116277","last_synced_commit":"44526959e27ee02d2c11342e220e049303e57d31"},"previous_names":[],"tags_count":35,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DamienHarper%2Fauditor","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DamienHarper%2Fauditor/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DamienHarper%2Fauditor/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DamienHarper%2Fauditor/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DamienHarper","download_url":"https://codeload.github.com/DamienHarper/auditor/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247399818,"owners_count":20932875,"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":["audit-bundle","audit-log","audit-logs","audit-trail","auditing-services","auditor","audits","diffs","doctrine","doctrine-audit","doctrine2","orm"],"created_at":"2024-08-01T15:01:35.922Z","updated_at":"2025-04-05T20:32:54.091Z","avatar_url":"https://github.com/DamienHarper.png","language":"PHP","funding_links":[],"categories":["PHP"],"sub_categories":[],"readme":"# auditor [![Tweet](https://img.shields.io/twitter/url/http/shields.io.svg?style=social)](https://twitter.com/intent/tweet?text=auditor,%20the%20missing%20audit%20log%20library.\u0026url=https://github.com/DamienHarper/auditor\u0026hashtags=auditor)\n\n[![Latest Stable Version](https://poser.pugx.org/damienharper/auditor/v/stable)](https://packagist.org/packages/damienharper/auditor)\n[![Latest Unstable Version](https://poser.pugx.org/damienharper/auditor/v/unstable)](https://packagist.org/packages/damienharper/auditor)\n[![auditor 3.x CI](https://github.com/DamienHarper/auditor/actions/workflows/ci-3.x.yml/badge.svg)](https://github.com/DamienHarper/auditor/actions/workflows/ci-3.x.yml)\n[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/DamienHarper/auditor/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/DamienHarper/auditor/?branch=master)\n[![codecov](https://codecov.io/gh/DamienHarper/auditor/branch/master/graph/badge.svg)](https://app.codecov.io/gh/DamienHarper/auditor/branch/master)\n[![License](https://poser.pugx.org/damienharper/auditor/license)](https://packagist.org/packages/damienharper/auditor)\n[![Total Downloads](https://poser.pugx.org/damienharper/auditor/downloads)](https://packagist.org/packages/damienharper/auditor)\n[![Monthly Downloads](https://poser.pugx.org/damienharper/auditor/d/monthly)](https://packagist.org/packages/damienharper/auditor)\n[![Daily Downloads](https://poser.pugx.org/damienharper/auditor/d/daily)](https://packagist.org/packages/damienharper/auditor)\n\nThe purpose of `auditor` is to provide an easy and standardized way to collect audit logs.\n\n\n## Architecture\nThis library is architected around two concepts:\n- Auditing services responsible for collecting audit events\n- Storage services responsible for persisting audit traces\n\nThose two kind of services are offered by Providers.\n\n\n## Default provider\nA default provider is included with this library: the `DoctrineProvider`\n\n`DoctrineProvider` offers both auditing services and sorage services.\nIt creates audit logs for all `Doctrine ORM` database related changes:\n\n- inserts and updates including their diffs and relation field diffs.\n- many to many relation changes, association and dissociation actions.\n- if available, the user responsible for these changes and his IP address are recorded. \n- audit entries are inserted within the same transaction during **flush** event \nso that even if something fails the global state remains clean.\n\n`DoctrineProvider` supports following RDBMS\n* MySQL\n* MariaDB\n* PostgreSQL\n* SQLite\n\n`DoctrineProvider` should work with **any other** database supported by `Doctrine`. \nThough, we can only really support the ones we can test with [GitHub Actions](https://github.com/features/actions).\n\nBasically you can track any change of any entity from audit logs.\n\n**NOTE:** `DoctrineProvider` cannot track DQL or direct SQL statements executions.\n\n\n## Official Documentation\n`auditor` official documentation can be found [here](https://damienharper.github.io/auditor-docs/).\n\n\n## Version Information\n| Version | Status                      | Requirements               | Badges                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |\n|:--------|:----------------------------|:---------------------------|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| 3.x     | Active development :rocket: | PHP \u003e= 8.2, Symfony \u003e= 5.4 | [![auditor 3.x CI](https://github.com/DamienHarper/auditor/actions/workflows/ci-3.x.yml/badge.svg)](https://github.com/DamienHarper/auditor/actions/workflows/ci-3.x.yml) \u003cbr/\u003e[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/DamienHarper/auditor/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/DamienHarper/auditor/?branch=master) \u003cbr/\u003e[![codecov](https://codecov.io/gh/DamienHarper/auditor/branch/master/graph/badge.svg)](https://app.codecov.io/gh/DamienHarper/auditor/branch/master) |\n| 2.x     | Active support              | PHP \u003e= 7.4, Symfony \u003e= 4.4 | [![auditor 2.x CI](https://github.com/DamienHarper/auditor/actions/workflows/ci-2.x.yml/badge.svg)](https://github.com/DamienHarper/auditor/actions/workflows/ci-2.x.yml) \u003cbr/\u003e[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/DamienHarper/auditor/badges/quality-score.png?b=2.x)](https://scrutinizer-ci.com/g/DamienHarper/auditor/?branch=2.x) \u003cbr/\u003e[![codecov](https://codecov.io/gh/DamienHarper/auditor/branch/master/graph/badge.svg)](https://app.codecov.io/gh/DamienHarper/auditor/branch/2.x)          |\n| 1.x     | EOL                         | PHP \u003e= 7.2, Symfony \u003e= 3.4 | [![auditor 1.x CI](https://github.com/DamienHarper/auditor/actions/workflows/ci-1.x.yml/badge.svg)](https://github.com/DamienHarper/auditor/actions/workflows/ci-1.x.yml) \u003cbr/\u003e[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/DamienHarper/auditor/badges/quality-score.png?b=1.x)](https://scrutinizer-ci.com/g/DamienHarper/auditor/?branch=1.x) \u003cbr/\u003e[![codecov](https://codecov.io/gh/DamienHarper/auditor/branch/1.x/graph/badge.svg)](https://app.codecov.io/gh/DamienHarper/auditor/branch/1.x)             |\n\nChangelog is available [here](https://damienharper.github.io/auditor-docs/docs/auditor/release-notes.html)\n\n\n## Contributing\n`auditor` is an open source project. Contributions made by the community are welcome. \nSend us your ideas, code reviews, pull requests and feature requests to help us improve this project.\n\nDo not forget to provide unit tests when contributing to this project. \nTo do so, follow instructions in this dedicated [README](tests/README.md)\n\n\n## Credits\n- Thanks to [all contributors](https://github.com/DamienHarper/auditor/graphs/contributors)\n- This library initially took some inspiration from [data-dog/audit-bundle](https://github.com/DATA-DOG/DataDogAuditBundle.git) and \n[simplethings/entity-audit-bundle](https://github.com/simplethings/EntityAuditBundle.git)\n- Special thanks to [JetBrains](https://www.jetbrains.com/?from=auditor) for their *Licenses for Open Source Development*\n\n## License\n`auditor` is free to use and is licensed under the [MIT license](http://www.opensource.org/licenses/mit-license.php)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FDamienHarper%2Fauditor","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FDamienHarper%2Fauditor","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FDamienHarper%2Fauditor/lists"}