{"id":147876,"date":"2026-06-09T00:04:56","date_gmt":"2026-06-08T21:04:56","guid":{"rendered":"https:\/\/vpesports.com\/minecraft\/mods\/stafflens\/"},"modified":"2026-06-09T00:04:56","modified_gmt":"2026-06-08T21:04:56","slug":"stafflens","status":"publish","type":"mod","link":"https:\/\/vpesports.com\/minecraft\/mods\/stafflens\/","title":{"rendered":"StaffLens"},"content":{"rendered":"<p># StaffLens<\/p>\n<p>**StaffLens** is a moderation audit plugin for **Paper 1.21** servers.<\/p>\n<p>The plugin records staff moderation and administration actions, stores them in **SQLite or MySQL**, and allows quick access through commands.<br \/>\nBoth built-in commands and supported plugin integrations are logged.<\/p>\n<p>&#8212;<\/p>\n<p>## Features<\/p>\n<p>* Log staff actions into a database<br \/>\n* View history by staff member<br \/>\n* View actions performed on a specific player<br \/>\n* Search through the moderation log<br \/>\n* View actions performed today<br \/>\n* Export history to a text file<br \/>\n* In-game notifications for critical actions<br \/>\n* Reload configuration without restarting the server<\/p>\n<p>&#8212;<\/p>\n<p>## Logged Actions<\/p>\n<p>The plugin can record:<\/p>\n<p>* ban, unban, mute, unmute, kick, warn<br \/>\n* giving and removing OP<br \/>\n* permission\/group changes<br \/>\n* teleports and staff movement<br \/>\n* fly, god, vanish, socialspy<br \/>\n* inventory and ender chest inspection<br \/>\n* giving items, clearing inventory, heal, feed, repair<br \/>\n* jail, unjail, nick, sudo, broadcast<br \/>\n* lookup commands such as `seen` and `history`<br \/>\n* gamemode changes<\/p>\n<p>The exact list of logged actions is defined in the code through **ActionType**.<\/p>\n<p>&#8212;<\/p>\n<p>## Supported Integrations<\/p>\n<p>* Vanilla<br \/>\n* LiteBans<br \/>\n* BanManager<br \/>\n* AdvancedBan<br \/>\n* Essentials<br \/>\n* CMI<br \/>\n* LuckPerms<\/p>\n<p>Each integration can be enabled or disabled in the configuration.<\/p>\n<p>&#8212;<\/p>\n<p>## Requirements<\/p>\n<p>* **Java 21**<br \/>\n* **Paper 1.21.x**<\/p>\n<p>&#8212;<\/p>\n<p>## Installation<\/p>\n<p>1. Build the plugin JAR.<br \/>\n2. Place it in the `plugins` folder.<br \/>\n3. Start the server.<br \/>\n4. Configure `plugins\/StaffLens\/config.yml`.<br \/>\n5. Run `\/sl reload` if needed.<\/p>\n<p>&#8212;<\/p>\n<p>## Database<\/p>\n<p>Supported databases:<\/p>\n<p>* **SQLite**<br \/>\n* **MySQL**<\/p>\n<p>SQLite is used by default.<\/p>\n<p>&#8212;<\/p>\n<p>### SQLite Setup<\/p>\n<p>No additional setup is required.<br \/>\nThe database will be automatically created in the plugin folder.<\/p>\n<p>&#8212;<\/p>\n<p>### MySQL Setup<\/p>\n<p>Configure the following values in `config.yml`:<\/p>\n<p>&#8220;`<br \/>\ndatabase.type: mysql<br \/>\ndatabase.mysql.host<br \/>\ndatabase.mysql.port<br \/>\ndatabase.mysql.database<br \/>\ndatabase.mysql.username<br \/>\ndatabase.mysql.password<br \/>\n&#8220;`<\/p>\n<p>The table and indexes are created automatically on startup.<\/p>\n<p>&#8212;<\/p>\n<p>## Commands<\/p>\n<p>Main command:<\/p>\n<p>&#8220;`<br \/>\n\/stafflens<br \/>\n\/sl<br \/>\n&#8220;`<\/p>\n<p>Subcommands:<\/p>\n<p>&#8220;`<br \/>\n\/sl log <player> [page]      &#8211; view actions performed by a staff member<br \/>\n\/sl who <player> [page]      &#8211; view actions performed against a target player<br \/>\n\/sl search <text> [page]     &#8211; search the log<br \/>\n\/sl today [page]             &#8211; view actions performed today<br \/>\n\/sl export <player>          &#8211; export a player&#8217;s history to a file<br \/>\n\/sl reload                   &#8211; reload configuration and integrations<br \/>\n&#8220;`<\/p>\n<p>&#8212;<\/p>\n<p>## Permissions<\/p>\n<p>&#8220;`<br \/>\nstafflens.use<br \/>\n&#8220;`<\/p>\n<p>Allows viewing logs.<\/p>\n<p>&#8220;`<br \/>\nstafflens.export<br \/>\n&#8220;`<\/p>\n<p>Allows exporting logs.<\/p>\n<p>&#8220;`<br \/>\nstafflens.admin<br \/>\n&#8220;`<\/p>\n<p>Allows using `\/sl reload`.<\/p>\n<p>&#8220;`<br \/>\nstafflens.notify<br \/>\n&#8220;`<\/p>\n<p>Receive notifications about critical actions.<\/p>\n<p>All permissions are granted to **OP** by default.<\/p>\n<p>&#8212;<\/p>\n<p>## Configuration<\/p>\n<p>File: `plugins\/StaffLens\/config.yml`<\/p>\n<p>&#8220;`<br \/>\nlocale: en<\/p>\n<p>database:<br \/>\n  type: sqlite<br \/>\n  mysql:<br \/>\n    host: localhost<br \/>\n    port: 3306<br \/>\n    database: minecraft<br \/>\n    username: root<br \/>\n    password: &#8220;&#8221;<\/p>\n<p>log:<br \/>\n  retention-days: 90<br \/>\n  page-size: 15<\/p>\n<p>notify:<br \/>\n  critical-actions:<br \/>\n    &#8211; OP_GIVE<br \/>\n    &#8211; PERMISSION_ADD<br \/>\n    &#8211; GROUP_ADD<\/p>\n<p>integrations:<br \/>\n  LiteBans: true<br \/>\n  BanManager: true<br \/>\n  AdvancedBan: true<br \/>\n  Essentials: true<br \/>\n  CMI: true<br \/>\n  LuckPerms: true<br \/>\n  Vanilla: true<br \/>\n&#8220;`<\/p>\n<p>&#8212;<\/p>\n<p>## Configuration Options<\/p>\n<p>* **locale** \u2014 language used for messages<br \/>\n* **database.type** \u2014 database type (`sqlite` or `mysql`)<br \/>\n* **log.retention-days** \u2014 how long logs are stored (in days)<br \/>\n* **log.page-size** \u2014 number of entries per page in commands<br \/>\n* **notify.critical-actions** \u2014 actions that trigger notifications<br \/>\n* **integrations.*** \u2014 enable or disable specific integrations<\/p>\n<p>&#8212;<\/p>\n<p>## Localization<\/p>\n<p>Localization files are located in the `locale` folder:<\/p>\n<p>* `en.yml`<br \/>\n* `ru.yml`<br \/>\n* `ua.yml`<\/p>\n<p>The language is selected using the `locale` setting in the configuration.<\/p>\n<p>&#8212;<\/p>\n<p>## Export<\/p>\n<p>The command<\/p>\n<p>&#8220;`<br \/>\n\/sl export <player>\n&#8220;`<\/p>\n<p>creates a text file in:<\/p>\n<p>&#8220;`<br \/>\nplugins\/StaffLens\/exports<br \/>\n&#8220;`<\/p>\n<p>The file contains:<\/p>\n<p>* generation time<br \/>\n* list of actions<br \/>\n* target player<br \/>\n* reason<br \/>\n* additional details<\/p>\n<p>&#8212;<\/p>\n<p>## Notifications<\/p>\n<p>If an action is listed in `notify.critical-actions`, players with the permission:<\/p>\n<p>&#8220;`<br \/>\nstafflens.notify<br \/>\n&#8220;`<\/p>\n<p>will receive an in-game notification.<\/p>\n<p>&#8212;<\/p>\n<p>## Log Storage<\/p>\n<p>When the plugin starts, it removes records older than `retention-days`.<\/p>\n<p>Indexes are automatically created for **SQLite** and **MySQL** to improve query performance.<\/p>\n<p>When the plugin reloads, it waits for the logging queue to finish before closing the database connection.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A plugin that logs server staff actions. Folia Supported.<\/p>\n","protected":false},"featured_media":0,"template":"","meta":{"_minecraft_slug":"stafflens","_minecraft_project_id":"U42khYED","_minecraft_author":"denfry","_minecraft_license":"MIT","_minecraft_downloads":5,"_minecraft_follows":0,"_minecraft_client_side":"unsupported","_minecraft_server_side":"required","_minecraft_storage_type":"zip","_minecraft_archive_name":"stafflens.zip","_minecraft_size_bytes":18641822,"_minecraft_version_count":1,"_minecraft_updated_at":"2026-05-16T12:37:08.135461Z","_minecraft_date_created":"2026-03-12T20:42:51.369655Z","_minecraft_date_modified":"2026-03-10T23:07:22.237115Z","_minecraft_project_url":"https:\/\/modrinth.com\/mod\/stafflens","_minecraft_icon_attachment_id":0,"_minecraft_imported_at":"2026-06-08T21:04:57+00:00","_minecraft_import_hash":"0fad02f47b7c472bd6f025493f2cf66c","_minecraft_versions":"","_minecraft_links":"","_minecraft_gallery":"","_minecraft_api_metadata":""},"mod_category":[125,126,127,129,92],"mod_loader":[131,132,134],"minecraft_version":[62,37,40,41,73,74,38,78,79,80,81,82],"class_list":["post-147876","mod","type-mod","status-publish","hentry","mod_category-folia","mod_category-management","mod_category-paper","mod_category-spigot","mod_category-utility","mod_loader-folia","mod_loader-paper","mod_loader-spigot","minecraft_version-1-21","minecraft_version-1-21-1","minecraft_version-1-21-10","minecraft_version-1-21-11","minecraft_version-1-21-2","minecraft_version-1-21-3","minecraft_version-1-21-4","minecraft_version-1-21-5","minecraft_version-1-21-6","minecraft_version-1-21-7","minecraft_version-1-21-8","minecraft_version-1-21-9"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>StaffLens - Minecraft<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/vpesports.com\/minecraft\/mods\/stafflens\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"StaffLens - Minecraft\" \/>\n<meta property=\"og:description\" content=\"A plugin that logs server staff actions. Folia Supported.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/vpesports.com\/minecraft\/mods\/stafflens\/\" \/>\n<meta property=\"og:site_name\" content=\"Minecraft\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/stafflens\\\/\",\"url\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/stafflens\\\/\",\"name\":\"StaffLens - Minecraft\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/#website\"},\"datePublished\":\"2026-06-08T21:04:56+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/stafflens\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/stafflens\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/stafflens\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Mods\",\"item\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"StaffLens\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/#website\",\"url\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/\",\"name\":\"Minecraft\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"StaffLens - Minecraft","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/vpesports.com\/minecraft\/mods\/stafflens\/","og_locale":"en_US","og_type":"article","og_title":"StaffLens - Minecraft","og_description":"A plugin that logs server staff actions. Folia Supported.","og_url":"https:\/\/vpesports.com\/minecraft\/mods\/stafflens\/","og_site_name":"Minecraft","twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/vpesports.com\/minecraft\/mods\/stafflens\/","url":"https:\/\/vpesports.com\/minecraft\/mods\/stafflens\/","name":"StaffLens - Minecraft","isPartOf":{"@id":"https:\/\/vpesports.com\/minecraft\/#website"},"datePublished":"2026-06-08T21:04:56+00:00","breadcrumb":{"@id":"https:\/\/vpesports.com\/minecraft\/mods\/stafflens\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/vpesports.com\/minecraft\/mods\/stafflens\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/vpesports.com\/minecraft\/mods\/stafflens\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/vpesports.com\/minecraft\/"},{"@type":"ListItem","position":2,"name":"Mods","item":"https:\/\/vpesports.com\/minecraft\/mods\/"},{"@type":"ListItem","position":3,"name":"StaffLens"}]},{"@type":"WebSite","@id":"https:\/\/vpesports.com\/minecraft\/#website","url":"https:\/\/vpesports.com\/minecraft\/","name":"Minecraft","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/vpesports.com\/minecraft\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"}]}},"_links":{"self":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod\/147876","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod"}],"about":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/types\/mod"}],"wp:attachment":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/media?parent=147876"}],"wp:term":[{"taxonomy":"mod_category","embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod_category?post=147876"},{"taxonomy":"mod_loader","embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod_loader?post=147876"},{"taxonomy":"minecraft_version","embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/minecraft_version?post=147876"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}