tophant.benjamin.config
Messages & Enums
message GlobalConfig
全局配置项
message GlobalConfig { // 全局配置 // // 是否启用调试模式(会自动影响到日志级别等配置) bool debug = 1; // 是否启用本地模式(一般不在配置文件中配置,而是命令行覆盖) bool local_mode = 2; // 选用的调度器 // 并发默认值【建议配置 default_task_config】 // // 默认浏览器并发数(单机版默认为 1) uint32 default_browser_concurrency = 11; // 默认标签并发数(单机版默认为 6) uint32 default_tab_concurrency = 12; // 请求参数默认值【建议配置 default_task_config】 // // 默认最大目标数量(默认为 math.MaxInt32) uint64 default_max_target = 21; // 默认最大结果数量(默认为 math.MaxInt32) uint64 default_max_result = 22; // 默认最大深度(默认为 999) uint64 default_max_depth = 23; // 默认浏览器配置【建议配置 default_task_config】 // // 默认浏览器视口宽度(默认为 1920) uint32 default_chrome_viewport_width = 31; // 默认浏览器视口高度(默认为 1080) uint32 default_chrome_viewport_height = 32; // 默认浏览器 User-Agent(默认为 MacOS Chrome) string default_user_agent = 33; // 默认浏览器 Accept-Language(默认为 zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7) string default_accept_language = 34; // 默认存储策略【建议配置 default_task_config】 // // 默认存储策略:收集响应体大小限制(默认为 10 MB) uint64 default_collect_body_size_limit_bytes = 41; // 默认存储策略:原始响应体大小限制(默认为 10 MB) uint64 default_raw_body_size_limit_bytes = 42; // 默认 ElementHandler 配置【建议配置 default_task_config】 repeated string default_handle_elements = 51; // 数据库配置 // // 数据库连接字符串,例如 postgres://postgres:@localhost:5432/benjamin?sslmode=disable string db_dsn = 91; // Redis 配置 // // 消息队列连接字符串,例如 redis://localhost:6379/0 或者 internal://pg string queue_dsn = 102; // 队列前缀,仅 redis 队列有效,默认为 `benjamin` string queue_prefix = 101; // Kafka 配置 repeated string kafka_addrs = 111; // Nacos 配置 // Docker 配置 // // 使用的 Docker 镜像,例如 benjamin:stable,默认为当前容器的镜像 string default_docker_image = 121; // Docker API Host,例如 benjamin-api:9812 string docker_api_host = 122; // 资源配置(当前仅 docker runner 生效) // // 内存限制(单位:MB) uint32 resource_limit_memory_mb = 151; // 任务默认配置 // 内部 flag 配置 repeated string flags = 299;}message GlobalConfig.KafkaTlsConfig
message KafkaTlsConfig { // Enable 代表启用 SSL bool enable = 1; string ca_file_path = 12; bytes ca_pem = 2; string cert_file_path = 13; bytes cert_pem = 3; string key_file_path = 14; bytes key_pem = 4; optional string key_password = 5;}message GlobalConfig.NacosConfig
message NacosConfig { // Enable 代表启用 Nacos 注册中心 bool enable = 1; // Nacos 的服务器地址,必填 string server_ip = 11; // Nacos 的服务器端口,必填 uint32 server_port = 12; // Nacos 的命名空间 string namespace_id = 13; string username = 14; string password = 15; // 向注册中心注册的 IP 地址,必填 string register_ip = 21; // 向注册中心注册的端口,默认为 9812 uint32 register_port = 22; // 向注册中心注册的 service name,默认为 benjamin string service_name = 23; // APTP 的 Nacos 配置文件路径 // // registry: // namespace: xxx // host: xxx // port: 8848 // bind: 10.0.81.111 // username: ... // password: ... string aptp_config_file = 91;}enum GlobalConfig.Scheduler
调度器选择
enum Scheduler { // 默认 SchedulerDefault = 0; // 协程 SchedulerCoroutine = 1; // 子进程 SchedulerSubprocess = 2; SchedulerDocker = 3;}