I want to give a bit more insight into this extension as well as ask for feedback.
First, it was not an easy extension to make. Flarum, the core extensions and the community extensions have many shortcomings that make logging actions more difficult. In time, this will be improved with better events for each situation. In fact, in the course of developing this extension I have submitted PRs to core to fix some of the events that were not triggered as expected. In the meantime I've had to use workarounds to be able to log those actions anyway.
While I do believe that basic logging should be provided by Flarum itself at some point, I'll leave that discussion for the now-splitted thread. Whatever your opinion on core logging is, this extension is much more than just the logging. It provides a human-readable version of the logs with easy access to the target resources as well as a filter feature. It also provides easy access to the logs right from the forum UI (similar to the screenshot, but it's in a modal).
Last but not least, this extension integrates with a bunch of community extensions, with many more to come. It's not limited to logging core events. Maintaining the compatibility with those third-party extensions will require significant work as well.
Releasing this as a premium extension ensures new features will regularely be added, new extensions compatibility be added without waiting for a scheduled update, and it pays for the maintenance during each of the coming Flarum betas which will very certainly break this extension.
Now, the planned features coming later this year:
- Export to JSON/CSV (you can already dump the database if you want to export)
- Fixes for the "known issues" listed in the documentation
- Support for other KILOWHAT extensions
- Support for more FriendsOfFlarum extensions
There are also some other features I will implement if there's interest:
- Ability to disable logging some actions
- Ability to restrict log browsing to a whitelist of admins instead of all admins
- If I add more options, the ability to "lock" the extension settings so that they can't be edited via the web
- Ability to "lock" the extension so it can't be disabled or rolled back via the web
- Additional data in events, for example post content upon revision. This would significantly increase the size of the log table
- Ability to log to file in addition to database