安装 Shadowrocket
- Linux 环境:安装依赖包
scikit-learn和pandas,可能还需要其他依赖,使用pip安装:pip install scikit-learn pandas
- Windows 环境:使用 Win PyPI 安装,
pip install shadowrocket
基础配置
- 安装位置:Shadowrocket 通常安装在
~/.local/lib或~/.local/lib/python3.8/site-packages。 - 日志分割器:默认使用
split_by_type,处理type字段,设置为split_by_type='type'。 - 日志频率:默认每天(
freq='day'),设置为freq='day'。
设置异常日志
- 阈值:设置
alert_threshold。shadowrocket.config.alert_threshold = 0.5
- 优化模型:调整
TruePositiveRate和FalsePositiveRate。shadowrocket.config.TP = 0.95 shadowrocket.config.FP = 0.1
日志格式与处理
- 日志文件:设置文件路径和格式:
import os import logging logging.basicConfig(level=logging.INFO) shadowrocket.config.output_dir = os.path.join(os.getcwd(), 'logs') shadowrocket.config.output_filename = 'system.log' shadowrocket.config.output_format = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s') - 日志过滤器:使用
shadowrocket.config.filters处理异常日志,shadowrocket.config.filters.add('异常日志', lambda x: x['type'] == 'attack')
自定义模型
- 模型设置:使用
shapley_value和shapletree库调整模型。import shapley_value as sv shadowrocket.config.model = sv.ShapleyTree() shadowrocket.config.n_trees = 1 shadowrocket.config.max_depth = 5
- 自定义模型:定义模型类,如
CustomMLModel, overridingpredict和predict_proba方法。
使用工具包
- 集成工具包:将 Shadowrocket 作为工具包配置,
python3 -m shadowrocket
- 自定义工具包:使用 custom 包扩展功能,如:
import os os.environ['PATH'] += '/usr/lib/python3.8/site-packages-shadowrocket'
或添加 custom 包到 Python 项目中。
验证和调整
- 调试:使用
shadowrocket.config对话框调试,查看参数设置和日志处理。 - 调整参数:通过多次尝试调整参数,优化模型性能。
Shadowrocket 的配置需要系统性,逐步调整参数和功能,确保模型准确识别异常日志,参考官方文档和论坛,获取帮助和优化配置。







京公网安备11000000000001号
京ICP备11000001号