Admin Logger e um mod para administradores de servidores Minecraft que registra acoes importantes de jogadores em arquivos de log.
- Logs de login/logout com coordenadas
- Registro de comandos executados com mascara para argumentos sensiveis
- Log de mensagens do chat
- Log de mortes
- Log de blocos quebrados e colocados
- Log de containers abertos e diferencas de itens ao fechar
- Log de itens dropados e coletados
- Log de mudancas de gamemode
- Log de teleportes por comando, ender pearl, chorus fruit e troca de dimensao
- Filtros por jogador, mundo/dimensao e comandos ignorados
- Logs em formato texto ou JSON Lines (
jsonl) - Indice global em
logs/adminlogger/_global/com todos os eventos do servidor - Diretorio, tamanho maximo de arquivo e pastas por UUID configuraveis
- Sistema de alertas por categoria, jogador observado ou comando observado
- Alertas para operadores online
- Alertas opcionais via Discord webhook
- Estatisticas da sessao por categoria e jogador
- Comandos
/adminlogger reload,/adminlogger statuse/adminlogger stats - Suporte a multiplos idiomas: ingles e portugues
- Rotacao automatica de logs por tamanho configuravel
- Minecraft 1.21.1
- NeoForge 21.1.233 ou superior
- Java 21
- Baixe o
.jarmais recente na aba Releases. - Coloque o arquivo na pasta
modsdo seu servidor NeoForge. - Reinicie o servidor.
Edite o arquivo adminlogger-common.toml, gerado na primeira execucao:
[general]
language = "pt_br"
logDirectory = "logs/adminlogger"
maxLogSizeMb = 5
logFormat = "text"
logGlobalIndex = true
useUuidFolders = false
includePlayerUuid = false
logChat = true
logCommands = true
logInventory = false
logBlocks = true
logContainers = true
logItems = true
logGameMode = true
logTeleports = true
ignoredPlayers = []
ignoredWorlds = []
ignoredCommands = ["login", "register", "l", "reg"]
enableAlerts = false
alertEventTypes = ["commands", "containers"]
watchedPlayers = []
watchedCommands = ["op", "deop", "ban", "pardon", "kick", "stop", "reload", "gamemode", "tp", "teleport"]
broadcastAlertsToOps = true
writeAlertLog = true
discordWebhookEnabled = false
discordWebhookUrl = ""
discordWebhookUsername = "Admin Logger"
maskSensitiveCommands = true
sensitiveCommandTerms = ["password", "passwd", "senha", "token", "secret", "key", "apikey", "api_key", "webhook"]Os logs por jogador sao salvos em logs/adminlogger/<jogador>/ por padrao. Se useUuidFolders = true, os logs passam para logs/adminlogger/<uuid>/.
Quando logGlobalIndex = true, todo evento tambem e escrito em logs/adminlogger/_global/, o que facilita auditoria rapida sem abrir pasta por pasta.
Use logFormat = "jsonl" se quiser processar os logs por ferramenta externa, dashboard ou script.
Para ativar alertas, defina enableAlerts = true. Com broadcastAlertsToOps = true, operadores online recebem alertas no chat. Para enviar ao Discord, preencha discordWebhookUrl e ligue discordWebhookEnabled = true.
Mantenha discordWebhookUrl privado. Se essa URL vazar, qualquer pessoa pode enviar mensagens no canal configurado.
.\gradlew.bat clean buildO arquivo final fica em build/libs/adminlogger-2.3.1.jar.
O mod e organizado por responsabilidade:
com.adminlogger: ponto de entrada do mod e constantes.com.adminlogger.command: comandos/adminlogger.com.adminlogger.event: handlers de eventos NeoForge/Minecraft.com.adminlogger.logging: escrita de logs, filtros e orquestracao de auditoria.com.adminlogger.alert: alertas para ops e Discord webhook.com.adminlogger.container: sessoes e diff de containers.com.adminlogger.i18n: carregamento de idiomas.com.adminlogger.stats: estatisticas de sessao.com.adminlogger.util: formatacao Minecraft e helpers reutilizaveis.
As versoes principais ficam centralizadas em gradle.properties:
minecraft_versionminecraft_version_rangeneo_versionloader_version_range
Para portar para uma versao mais nova, atualize esses valores usando uma versao NeoForge compativel, rode .\gradlew.bat build e revise principalmente os eventos usados em AdminLogger.