ja-netfilter 2022.2.0
一个javaagent框架
用法
- 从发布页面
- 添加
-javaagent:/absolute/path/to/ja-netfilter.jar参数( 更改为您的实际路径 )
- 添加作为参数
java命令。 例如:java -javaagent:/absolute/path/to/ja-netfilter.jar -jar executable_jar_file.jar - 一些应用程序支持
JVM Options file,您可以添加为一行JVM Options file. - 警告:不要放一些不必要的空白字符!
- 或执行
java -jar /path/to/ja-netfilter.jar使用 attach mode. - 对于Java 17 ,您必须至少添加这些
JVM Options:
--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED
--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED
- 编辑你的插件配置文件:
${lower plugin name}.conf文件中 config你在哪里 ja-netfilter.jar位于。 - 这
config, logs和 plugins可以通过 javaagent args 。
- 例如:
-javaagent:/path/to/ja-netfilter.jar=appName,您的配置、日志和插件目录将是config-appname,logs-appname和plugins-appname. - 如果没有 javaagent 参数,它们默认为
config,logs和plugins. - 这种机制将避免多余和臃肿
config,logs和plugins.
- 运行你的java应用程序并享受~
配置文件格式
[ABC]
# for the specified section name
# for example
[URL]
EQUAL,https://someurl
[DNS]
EQUAL,somedomain
# EQUAL Use `equals` to compare
# EQUAL_IC Use `equals` to compare, ignore case
# KEYWORD Use `contains` to compare
# KEYWORD_IC Use `contains` to compare, ignore case
# PREFIX Use `startsWith` to compare
# PREFIX_IC Use `startsWith` to compare, ignore case
# SUFFIX Use `endsWith` to compare
# SUFFIX_IC Use `endsWith` to compare, ignore case
# REGEXP Use regular expressions to match
调试信息
- 这
ja-netfilter输出默认不会调试信息 - 添加环境变量
JANF_DEBUG=1(日志级别)并开始启用它 - 或添加系统属性
-Djanf.debug=1(日志级别)启用它 - 日志级别:
NONE=0,DEBUG=1,INFO=2,WARN=3,ERROR=4
调试输出
- 这
ja-netfilter将调试信息输出到console默认情况下 - 添加环境变量
JANF_OUTPUT=value并开始改变输出介质 - 或添加系统属性
-Djanf.output=value改变输出介质 - 输出中值:[
NONE=0,CONSOLE=1,FILE=2,CONSOLE+FILE=3,WITH_PID=4] - 例如:
console +file +pid file name= 1 + 2 + 4 = 7,所以-Djanf.output=7










