Java Debug Agent | Агент для логирования вызовов методов

Программа Java Debug Agent | Агент для логирования вызовов методов 1.0

Создайте и подтвердите аккаунт для скачивания
Поддерживаемые версии
  1. Отсутствует

Java Debug Agent​

Агент позволяющий логгировать стактрейс любого метода.
В первую очередь агент предназначался для логгирования метода добавления оператора, а также исполнения команд из консоли и получения информации о том, откуда данный метод был вызван.
При помощи агента можно 100% отследить какой метод и кем выполняется, что позволяет с лёгкостью отследить к примеру хак плагины.


Базовое использование​

Код:
java -javaagent:/path/to/debug-agent-1.0.jar -jar myapp.jar


Аргументы агента​

Код:
-javaagent:setop-agent.jar="Class1:methodA|methodB,Class2:methodC"

Формат аргументов​

Код:
<ClassSimpleName>:<method1>|<method2>|<method3>,<AnotherClass>:<methodX>

  • ClassSimpleName — имя класса без пакета (например, PlayerList)
  • method1, method2, … — имена методов для патчинга (разделяются | или +)
  • Несколько классов разделяются запятой ,

Пример​

Код:
-javaagent:setop-agent.jar=PlayerList:addOp|op,CraftEntity:setOp


Дополнительные настройки через системные свойства​

Вывод в консоль​

Код:
-DdebugAgent.printToConsole=true - включить вывод в консоль
-DdebugAgent.printToConsole=false - отключить вывод в консоль

Вывод в файл​

Код:
-DdebugAgent.printToFile=/path/to/log.txt

  • Если путь не указан, вывод в файл отключен

Значение по умолчанию​

Если аргументы агента не переданы, агент патчит метод:

Код:
PlayerList:addOp|op

Пример длялоггирования с аргументами:​

Код:
-javaagent:agent-1.0.jar="PlayerList:addOp|op,SimpleCommandMap:dispatch"
- будет выводить добавление оператора в классе PlayerList, а также исполнение команды в классе SimpleCommandMap

Пример вывода дебага:​

Код:
[23:20:53] [Server thread/WARN]: [DEBUG-AGENT] Method dispatch was called!
[23:20:53] [Server thread/WARN]:  runtimeClass=org.bukkit.craftbukkit.v1_16_R3.command.CraftCommandMap
[23:20:53] [Server thread/WARN]: ---- method params ----
[23:20:53] [Server thread/WARN]: param0= com.destroystokyo.paper.console.TerminalConsoleCommandSender@43f121b6
[23:20:53] [Server thread/WARN]: param1= 123
[23:20:53] [Server thread/WARN]: ---- captured stack ----
[23:20:53] [Server thread/WARN]:  ru.overwrite.agent.Main.handlePatchedCall(Main.java:191)
[23:20:53] [Server thread/WARN]:  org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java)
[23:20:53] [Server thread/WARN]:  org.bukkit.craftbukkit.v1_16_R3.CraftServer.dispatchCommand(CraftServer.java:767)
[23:20:53] [Server thread/WARN]:  org.bukkit.craftbukkit.v1_16_R3.CraftServer.dispatchServerCommand(CraftServer.java:711)
[23:20:53] [Server thread/WARN]:  net.minecraft.server.v1_16_R3.DedicatedServer.handleCommandQueue(DedicatedServer.java:460)
[23:20:53] [Server thread/WARN]:  net.minecraft.server.v1_16_R3.DedicatedServer.b(DedicatedServer.java:428)
[23:20:53] [Server thread/WARN]:  net.minecraft.server.v1_16_R3.MinecraftServer.a(MinecraftServer.java:1382)
[23:20:53] [Server thread/WARN]:  net.minecraft.server.v1_16_R3.MinecraftServer.w(MinecraftServer.java:1112)
[23:20:53] [Server thread/WARN]:  net.minecraft.server.v1_16_R3.MinecraftServer.lambda$a$0(MinecraftServer.java:252)
[23:20:53] [Server thread/WARN]:  java.base/java.lang.Thread.run(Thread.java:1474)
[23:20:53] [Server thread/WARN]:
Классификация ПО
  1. Программа
Операционная система
  1. Windows
  2. Linux
Набор технологий
java, javaassist
Автор
Overwrite
Скачивания
4
Просмотры
90
Первый выпуск
Обновление
Оценка
0.00 звёзд 0 оценок

Другие ресурсы пользователя Overwrite

Поделиться ресурсом

Назад
Сверху Снизу