仓库初始化

This commit is contained in:
lwt
2026-05-22 00:16:08 +08:00
commit 95c96dce42
118 changed files with 23005 additions and 0 deletions
+70
View File
@@ -0,0 +1,70 @@
prefix=ddxq2
server_id=1
server_type=game_server
server_name=自己的名字_1
ip=
game_host=
tcp_port=18001
http_port=19001
login_node=ddxq2_login_server_s900@172.16.14.122
center_node=ddxq2_center_server_s1@172.16.14.122
db_host=172.16.12.220
db_port=3306
db_user=ddxqadmin
db_pass=ddxq@44168deabe63
db_save_time=300000
db_save_count=10000
log_save_time=120000
log_save_count=1000
log_dir=run/server/log
role_log=run/server/log
logger_level=debug
open_time={{2025,1,1},{10,0,0}}
merge_server_ids=[]
merge_server_time={{1970,1,1},{0,0,0}}
last_merge_server_ids=[]
game_tcp_port=18001
login_host=172.16.14.122
login_http_port=19900
is_develop=true
is_inner=true
auto_reload=true
gm_auth=true
risk_control_server_ip=msg.4399sy.com
risk_control_server_post=5978
game_id_min=10
game_id_max=9999
game_id_default=10
login_id_min=1
login_id_max=1000
login_id_default=1
center_id_min=1
center_id_max=10
center_id_default=1
cross_id_min=10000
cross_id_max=99999
cross_id_default=10000
client_id_min=10
client_id_max=9999
client_id_default=10
login_db_name=
login_db_server_id=900
login_db_host=172.16.12.220
login_db_port=3306
login_db_user=ddxqadmin
login_db_pass=ddxq@44168deabe63
cookie=ddxq2-node
required_keys_base=prefix,server_id,server_type,ip,db_host,db_user,db_pass,db_port,log_dir,db_game_name,auto_reload
required_keys_game=server_name,game_host,tcp_port,http_port,open_time,login_node,center_node,db_log_name
required_keys_login=tcp_port
required_keys_center=open_time,login_node,db_log_name
required_keys_cross=open_time,center_node,db_log_name
required_keys_client=tcp_port,game_host,login_host,login_http_port,login_node
config_keys_base=prefix,server_id,server_type,ip,db_host,db_port,db_user,db_pass,db_save_time,db_save_count,log_save_time,log_save_count,log_dir,logger_level,is_develop,is_inner,auto_reload,gm_auth,cookie,db_game_name
config_keys_game=server_name,game_host,tcp_port,http_port,login_node,center_node,open_time,merge_server_ids,merge_server_time,last_merge_server_ids,risk_control_server_ip,risk_control_server_post,role_log,db_log_name
config_keys_login=tcp_port
config_keys_center=open_time,login_node,db_log_name
config_keys_cross=open_time,center_node,db_log_name
config_keys_client=tcp_port,game_host,game_tcp_port,login_host,login_http_port,login_node
editable_config_base=prefix,server_id,server_type,ip,db_host,db_port,db_user,db_pass,log_dir,logger_level,auto_reload,cookie
editable_config_game=server_name,game_host,tcp_port,http_port,login_node,center_node,open_time,role_log
+168
View File
@@ -0,0 +1,168 @@
[
%% Center server config
{center_server, [
{server_type, center_server},
{server_id, ${server_id}},
{login_node, '${login_node}'},
{open_time, ${open_time}},
{gm_auth, ${gm_auth}},
{is_develop, ${is_develop}},
{is_inner, ${is_inner}},
{is_mainland, true},
{auto_reload, ${auto_reload}},
%% Logger config
{logger, [
{handler, info, ms_logger_std, #{
level => info,
config => #{
file => "${log_dir}/info.log",
burst_limit_enable => true,
burst_limit_max_count => 500,
burst_limit_window_time => 1000,
sync_mode_qlen => 200,
drop_mode_qlen => 200,
flush_qlen => 1000,
max_no_bytes => 209715200,
max_no_files => 10
},
filter_default => stop,
filters => [
{domain, {fun logger_filters:domain/2, {log, equal, [ms_base]}}}
],
formatter => {logger_formatter, #{
max_size => 2000,
single_line => false,
legacy_header => false,
template => ["====| ", time, " | ", level, " | ", {id, [id], ["undefined"]}, " | ", mfa, ":", line, " | ", pid, " |====\n", msg, "\n"]
}}
}},
{handler, error, ms_logger_std, #{
level => error,
config => #{
file => "${log_dir}/error.log",
burst_limit_enable => true,
burst_limit_max_count => 500,
burst_limit_window_time => 1000,
sync_mode_qlen => 200,
drop_mode_qlen => 200,
flush_qlen => 1000,
max_no_bytes => 209715200,
max_no_files => 10
},
filter_default => stop,
filters => [
{domain, {fun logger_filters:domain/2, {log, equal, [ms_base]}}}
],
formatter => {logger_formatter, #{
max_size => 10000,
single_line => false,
legacy_header => false,
template => ["====| ", time, " | ", level, " | ", {id, [id], ["undefined"]}, " | ", mfa, ":", line, " | ", pid, " |====\n", msg, "\n"]
}}
}},
{handler, http_log, ms_logger_std, #{
level => info,
config => #{
file => "${log_dir}/http_info.log",
burst_limit_enable => true,
burst_limit_max_count => 500,
burst_limit_window_time => 1000,
sync_mode_qlen => 200,
drop_mode_qlen => 200,
flush_qlen => 1000,
max_no_bytes => 209715200,
max_no_files => 10
},
filter_default => stop,
filters => [
{http_domain, {fun logger_filters:domain/2, {log, equal, [ms_http]}}}
],
formatter => {logger_formatter, #{
max_size => 10000,
single_line => false,
legacy_header => false,
template => ["====| ", time, " | ", level, " | ", {id, [id], ["undefined"]}, " | ", mfa, ":", line, " | ", pid, " |====\n", msg, "\n"]
}}
}}
]}
]},
%% ms_cache config
{ms_cache, [
{data_node, undefined},
{cache_db_type, ets},
{data_fmt, record},
{table_worker_count, 8},
{db_save_time, ${db_save_time}},
{db_save_count, ${db_save_count}},
{db_driver, 'mysql-otp'},
{db_user, "${db_user}"},
{db_pass, "${db_pass}"},
{db_host, "${db_host}"},
{db_port, ${db_port}},
{db_name, "${db_game_name}"},
{db_encoding, utf8},
{db_select_pool_name, select_pool_name},
{db_select_pool_size, 32},
{db_select_pool_overflow, 128},
{db_update_pool_name, update_pool_name},
{db_update_pool_size, 10},
{db_sync_options, #{
create_table => true,
drop_table => false,
alter_table => true,
patch_run_mod => auto,
patch_prefix => "patch_",
limit => 7
}}
]},
%% ms_tbllog config
{ms_tbllog, [
{data_node, undefined},
{data_fmt, record},
{db_save_start_time, 60000},
{db_save_time, ${log_save_time}},
{db_save_count, ${log_save_count}},
{db_driver, 'mysql-otp'},
{db_user, "${db_user}"},
{db_pass, "${db_pass}"},
{db_host, "${db_host}"},
{db_port, ${db_port}},
{db_name, "${db_log_name}"},
{db_encoding, utf8},
{db_update_pool_name, tbllog_pool_name},
{db_update_pool_size, 10}
]},
%% kernel config
{kernel, [
{inet_dist_listen_min, 16000},
{inet_dist_listen_max, 17000},
{logger_level, ${logger_level}},
{logger, [
{filters, stop, [
{domain, {fun logger_filters:domain/2, {log, equal, [ms_base]}}},
{http_domain, {fun logger_filters:domain/2, {log, equal, [ms_http]}}}
]},
{handler, default, logger_std_h, #{
level => ${logger_level},
filter_default => stop,
filters => [{need_level, {fun logger_filters:level/2, {log, gteq, info}}}],
formatter => {logger_formatter, #{
max_size => 10000,
single_line => false,
legacy_header => false,
template => ["====| ", time, " | ", level, " | ", {id, [id], ["undefined"]}, " | ", mfa, ":", line, " | ", pid, " |====\n", msg, "\n"]
}}
}}
]}
]},
%% sasl config
{sasl, [
{sasl_error_logger, false}
]}
].
@@ -0,0 +1,94 @@
[
%% 客户端压测服配置
{client_server, [
{host, "${game_host}"},
{tcp_port, ${tcp_port}},
{server_id, ${server_id}},
{login_server_host, "${login_host}"},
{login_server_http_port, ${login_http_port}},
{login_node, '${login_node}'},
{game_tcp_port, ${game_tcp_port}},
{test_mods, [test_item]},
%% 日志文件配置
{logger, [
{handler, info, ms_logger_std, #{
level => info,
config => #{
file => "${log_dir}/info.log",
burst_limit_enable => true,
burst_limit_max_count => 500,
burst_limit_window_time => 1000,
sync_mode_qlen => 200,
drop_mode_qlen => 200,
flush_qlen => 1000,
max_no_bytes => 209715200,
max_no_files => 10
},
filter_default => stop,
filters => [
{domain, {fun logger_filters:domain/2, {log, equal, [ms_base]}}}
],
formatter => {logger_formatter, #{
max_size => 2000,
single_line => false,
legacy_header => false,
template => ["====| ", time, " | ", level, " | ", {id, [id], ["undefined"]}, " | ", mfa, ":", line, " | ", pid, " |====\n", msg, "\n"]
}}
}},
{handler, error, ms_logger_std, #{
level => error,
config => #{
file => "${log_dir}/error.log",
burst_limit_enable => true,
burst_limit_max_count => 500,
burst_limit_window_time => 1000,
sync_mode_qlen => 200,
drop_mode_qlen => 200,
flush_qlen => 1000,
max_no_bytes => 209715200,
max_no_files => 10
},
filter_default => stop,
filters => [
{domain, {fun logger_filters:domain/2, {log, equal, [ms_base]}}}
],
formatter => {logger_formatter, #{
max_size => 10000,
single_line => false,
legacy_header => false,
template => ["====| ", time, " | ", level, " | ", {id, [id], ["undefined"]}, " | ", mfa, ":", line, " | ", pid, " |====\n", msg, "\n"]
}}
}}
]}
]},
%% kernel 配置
{kernel, [
{inet_dist_listen_min, 16000},
{inet_dist_listen_max, 17000},
{logger_level, ${logger_level}},
{logger, [
{filters, stop, [
{domain, {fun logger_filters:domain/2, {log, equal, [ms_base]}}}
]},
{handler, default, logger_std_h, #{
level => ${logger_level},
filter_default => stop,
filters => [{need_level, {fun logger_filters:level/2, {log, gteq, info}}}],
formatter => {logger_formatter, #{
max_size => 10000,
single_line => false,
legacy_header => false,
template => ["====| ", time, " | ", level, " | ", {id, [id], ["undefined"]}, " | ", mfa, ":", line, " | ", pid, " |====\n", msg, "\n"]
}}
}}
]}
]},
%% sasl 配置
{sasl, [
{sasl_error_logger, false}
]}
].
+168
View File
@@ -0,0 +1,168 @@
[
%% Cross server config
{cross_server, [
{server_type, cross_server},
{server_id, ${server_id}},
{center_node, '${center_node}'},
{open_time, ${open_time}},
{gm_auth, ${gm_auth}},
{is_develop, ${is_develop}},
{is_inner, ${is_inner}},
{is_mainland, true},
%% Logger config
{logger, [
{handler, info, ms_logger_std, #{
level => info,
config => #{
file => "${log_dir}/info.log",
burst_limit_enable => true,
burst_limit_max_count => 500,
burst_limit_window_time => 1000,
sync_mode_qlen => 200,
drop_mode_qlen => 200,
flush_qlen => 1000,
max_no_bytes => 209715200,
max_no_files => 10
},
filter_default => stop,
filters => [
{domain, {fun logger_filters:domain/2, {log, equal, [ms_base]}}}
],
formatter => {logger_formatter, #{
max_size => 2000,
single_line => false,
legacy_header => false,
template => ["====| ", time, " | ", level, " | ", {id, [id], ["undefined"]}, " | ", mfa, ":", line, " | ", pid, " |====\n", msg, "\n"]
}}
}},
{handler, error, ms_logger_std, #{
level => error,
config => #{
file => "${log_dir}/error.log",
burst_limit_enable => true,
burst_limit_max_count => 500,
burst_limit_window_time => 1000,
sync_mode_qlen => 200,
drop_mode_qlen => 200,
flush_qlen => 1000,
max_no_bytes => 209715200,
max_no_files => 10
},
filter_default => stop,
filters => [
{domain, {fun logger_filters:domain/2, {log, equal, [ms_base]}}}
],
formatter => {logger_formatter, #{
max_size => 10000,
single_line => false,
legacy_header => false,
template => ["====| ", time, " | ", level, " | ", {id, [id], ["undefined"]}, " | ", mfa, ":", line, " | ", pid, " |====\n", msg, "\n"]
}}
}},
{handler, http_log, ms_logger_std, #{
level => info,
config => #{
file => "${log_dir}/http_info.log",
burst_limit_enable => true,
burst_limit_max_count => 500,
burst_limit_window_time => 1000,
sync_mode_qlen => 200,
drop_mode_qlen => 200,
flush_qlen => 1000,
max_no_bytes => 209715200,
max_no_files => 10
},
filter_default => stop,
filters => [
{http_domain, {fun logger_filters:domain/2, {log, equal, [ms_http]}}}
],
formatter => {logger_formatter, #{
max_size => 10000,
single_line => false,
legacy_header => false,
template => ["====| ", time, " | ", level, " | ", {id, [id], ["undefined"]}, " | ", mfa, ":", line, " | ", pid, " |====\n", msg, "\n"]
}}
}}
]}
]},
%% ms_cache config
{ms_cache, [
{data_node, undefined},
{cache_db_type, ets},
{data_fmt, record},
{table_worker_count, 8},
{db_save_time, ${db_save_time}},
{db_save_count, ${db_save_count}},
{db_driver, 'mysql-otp'},
{db_user, "${db_user}"},
{db_pass, "${db_pass}"},
{db_host, "${db_host}"},
{db_port, ${db_port}},
{db_name, "${db_game_name}"},
{db_encoding, utf8},
{db_select_pool_name, select_pool_name},
{db_select_pool_size, 32},
{db_select_pool_overflow, 128},
{db_update_pool_name, update_pool_name},
{db_update_pool_size, 10},
{db_sync_options, #{
create_table => true,
drop_table => false,
alter_table => true,
patch_run_mod => auto,
patch_prefix => "patch_",
limit => 7
}}
]},
%% ms_tbllog config
{ms_tbllog, [
{data_node, undefined},
{data_fmt, record},
{db_save_start_time, 60000},
{db_save_time, ${log_save_time}},
{db_save_count, ${log_save_count}},
{db_driver, 'mysql-otp'},
{db_user, "${db_user}"},
{db_pass, "${db_pass}"},
{db_host, "${db_host}"},
{db_port, ${db_port}},
{db_name, "${db_log_name}"},
{db_encoding, utf8},
{db_update_pool_name, tbllog_pool_name},
{db_update_pool_size, 10}
]},
%% kernel config
{kernel, [
{inet_dist_listen_min, 16000},
{inet_dist_listen_max, 17000},
{logger_level, ${logger_level}},
{logger, [
{filters, stop, [
{domain, {fun logger_filters:domain/2, {log, equal, [ms_base]}}},
{http_domain, {fun logger_filters:domain/2, {log, equal, [ms_http]}}}
]},
{handler, default, logger_std_h, #{
level => ${logger_level},
filter_default => stop,
filters => [{need_level, {fun logger_filters:level/2, {log, gteq, info}}}],
formatter => {logger_formatter, #{
max_size => 10000,
single_line => false,
legacy_header => false,
template => ["====| ", time, " | ", level, " | ", {id, [id], ["undefined"]}, " | ", mfa, ":", line, " | ", pid, " |====\n", msg, "\n"]
}}
}}
]}
]},
%% sasl config
{sasl, [
{sasl_error_logger, false}
]}
].
+181
View File
@@ -0,0 +1,181 @@
[
%% 游戏服配置
{game_server, [
{server_type, game_server},
{platform_zone, 0},
{tcp_port, ${tcp_port}},
{http_port, ${http_port}},
{server_id, ${server_id}},
{server_name, "${server_name}"},
{main_platform, "android_cn"},
{merge_server_ids, ${merge_server_ids}},
{login_node, '${login_node}'},
{center_node, '${center_node}'},
{open_time, ${open_time}},
{gm_auth, ${gm_auth}},
{is_develop, ${is_develop}},
{is_inner, ${is_inner}},
{is_mainland, true},
{auto_reload, ${auto_reload}},
{game_host, "${game_host}"},
{game_tcp_port, ${game_tcp_port}},
{role_log, "${role_log}"},
{risk_control_server_ip, "${risk_control_server_ip}"},
{risk_control_server_post, ${risk_control_server_post}},
%% 日志文件配置
{logger, [
{handler, info, ms_logger_std, #{
level => info,
config => #{
file => "${log_dir}/info.log",
burst_limit_enable => true,
burst_limit_max_count => 500,
burst_limit_window_time => 1000,
sync_mode_qlen => 200,
drop_mode_qlen => 200,
flush_qlen => 1000,
max_no_bytes => 209715200,
max_no_files => 10
},
filter_default => stop,
filters => [
{domain, {fun logger_filters:domain/2, {log, equal, [ms_base]}}}
],
formatter => {logger_formatter, #{
max_size => 2000,
single_line => false,
legacy_header => false,
template => ["====| ", time, " | ", level, " | ", {id, [id], ["undefined"]}, " | ", mfa, ":", line, " | ", pid, " |====\n", msg, "\n"]
}}
}},
{handler, error, ms_logger_std, #{
level => error,
config => #{
file => "${log_dir}/error.log",
burst_limit_enable => true,
burst_limit_max_count => 500,
burst_limit_window_time => 1000,
sync_mode_qlen => 200,
drop_mode_qlen => 200,
flush_qlen => 1000,
max_no_bytes => 209715200,
max_no_files => 10
},
filter_default => stop,
filters => [
{domain, {fun logger_filters:domain/2, {log, equal, [ms_base]}}}
],
formatter => {logger_formatter, #{
max_size => 10000,
single_line => false,
legacy_header => false,
template => ["====| ", time, " | ", level, " | ", {id, [id], ["undefined"]}, " | ", mfa, ":", line, " | ", pid, " |====\n", msg, "\n"]
}}
}},
{handler, http_log, ms_logger_std, #{
level => info,
config => #{
file => "${log_dir}/http_info.log",
burst_limit_enable => true,
burst_limit_max_count => 500,
burst_limit_window_time => 1000,
sync_mode_qlen => 200,
drop_mode_qlen => 200,
flush_qlen => 1000,
max_no_bytes => 209715200,
max_no_files => 10
},
filter_default => stop,
filters => [
{http_domain, {fun logger_filters:domain/2, {log, equal, [ms_http]}}}
],
formatter => {logger_formatter, #{
max_size => 10000,
single_line => false,
legacy_header => false,
template => ["====| ", time, " | ", level, " | ", {id, [id], ["undefined"]}, " | ", mfa, ":", line, " | ", pid, " |====\n", msg, "\n"]
}}
}}
]}
]},
%% ms_cache 缓存配置
{ms_cache, [
{data_node, undefined},
{cache_db_type, ets},
{data_fmt, record},
{table_worker_count, 8},
{db_save_time, ${db_save_time}},
{db_save_count, ${db_save_count}},
{db_driver, 'mysql-otp'},
{db_user, "${db_user}"},
{db_pass, "${db_pass}"},
{db_host, "${db_host}"},
{db_port, ${db_port}},
{db_name, "${db_game_name}"},
{db_encoding, utf8},
{db_select_pool_name, select_pool_name},
{db_select_pool_size, 32},
{db_select_pool_overflow, 128},
{db_update_pool_name, update_pool_name},
{db_update_pool_size, 10},
{db_sync_options, #{
create_table => true,
drop_table => false,
alter_table => true,
patch_run_mod => auto,
patch_prefix => "patch_",
limit => 7
}}
]},
%% ms_tbllog 后台日志配置
{ms_tbllog, [
{data_node, undefined},
{data_fmt, record},
{db_save_start_time, 60000},
{db_save_time, ${log_save_time}},
{db_save_count, ${log_save_count}},
{db_driver, 'mysql-otp'},
{db_user, "${db_user}"},
{db_pass, "${db_pass}"},
{db_host, "${db_host}"},
{db_port, ${db_port}},
{db_name, "${db_log_name}"},
{db_encoding, utf8},
{db_update_pool_name, tbllog_pool_name},
{db_update_pool_size, 10}
]},
%% kernel 配置
{kernel, [
{inet_dist_listen_min, 16000},
{inet_dist_listen_max, 17000},
{logger_level, ${logger_level}},
{logger, [
{filters, stop, [
{domain, {fun logger_filters:domain/2, {log, equal, [ms_base]}}},
{http_domain, {fun logger_filters:domain/2, {log, equal, [ms_http]}}}
]},
{handler, default, logger_std_h, #{
level => ${logger_level},
filter_default => stop,
filters => [{need_level, {fun logger_filters:level/2, {log, gteq, info}}}],
formatter => {logger_formatter, #{
max_size => 10000,
single_line => false,
legacy_header => false,
template => ["====| ", time, " | ", level, " | ", {id, [id], ["undefined"]}, " | ", mfa, ":", line, " | ", pid, " |====\n", msg, "\n"]
}}
}}
]}
]},
%% sasl 配置
{sasl, [
{sasl_error_logger, false}
]}
].
+142
View File
@@ -0,0 +1,142 @@
[
%% 登录服配置
{login_server, [
{server_env, "internal"},
{login_node_port, ${tcp_port}},
%% 日志文件配置
{logger, [
{handler, info, ms_logger_std, #{
level => info,
config => #{
file => "${log_dir}/info.log",
burst_limit_enable => true,
burst_limit_max_count => 500,
burst_limit_window_time => 1000,
sync_mode_qlen => 200,
drop_mode_qlen => 200,
flush_qlen => 1000,
max_no_bytes => 209715200,
max_no_files => 10
},
filter_default => stop,
filters => [
{domain, {fun logger_filters:domain/2, {log, equal, [ms_base]}}}
],
formatter => {logger_formatter, #{
max_size => 2000,
single_line => false,
legacy_header => false,
template => ["====| ", time, " | ", level, " | ", {id, [id], ["undefined"]}, " | ", mfa, ":", line, " | ", pid, " |====\n", msg, "\n"]
}}
}},
{handler, error, ms_logger_std, #{
level => error,
config => #{
file => "${log_dir}/error.log",
burst_limit_enable => true,
burst_limit_max_count => 500,
burst_limit_window_time => 1000,
sync_mode_qlen => 200,
drop_mode_qlen => 200,
flush_qlen => 1000,
max_no_bytes => 209715200,
max_no_files => 10
},
filter_default => stop,
filters => [
{domain, {fun logger_filters:domain/2, {log, equal, [ms_base]}}}
],
formatter => {logger_formatter, #{
max_size => 10000,
single_line => false,
legacy_header => false,
template => ["====| ", time, " | ", level, " | ", {id, [id], ["undefined"]}, " | ", mfa, ":", line, " | ", pid, " |====\n", msg, "\n"]
}}
}},
{handler, http_log, ms_logger_std, #{
level => info,
config => #{
file => "${log_dir}/http_info.log",
burst_limit_enable => true,
burst_limit_max_count => 500,
burst_limit_window_time => 1000,
sync_mode_qlen => 200,
drop_mode_qlen => 200,
flush_qlen => 1000,
max_no_bytes => 209715200,
max_no_files => 10
},
filter_default => stop,
filters => [
{http_domain, {fun logger_filters:domain/2, {log, equal, [ms_http]}}}
],
formatter => {logger_formatter, #{
max_size => 10000,
single_line => false,
legacy_header => false,
template => ["====| ", time, " | ", level, " | ", {id, [id], ["undefined"]}, " | ", mfa, ":", line, " | ", pid, " |====\n", msg, "\n"]
}}
}}
]}
]},
%% ms_cache 缓存配置
{ms_cache, [
{data_node, undefined},
{cache_db_type, proc},
{data_fmt, record},
{db_save_time, ${db_save_time}},
{db_save_count, ${db_save_count}},
{db_driver, 'mysql-otp'},
{db_user, "${login_db_user}"},
{db_pass, "${login_db_pass}"},
{db_host, "${login_db_host}"},
{db_port, ${login_db_port}},
{db_name, "${db_game_name}"},
{db_encoding, utf8},
{db_select_pool_name, select_pool_name},
{db_select_pool_size, 10},
{db_update_pool_name, update_pool_name},
{db_update_pool_size, 10},
{db_sync_options, #{
limit => 7,
create_table => true,
drop_table => false,
alter_table => true,
patch_run_mod => auto,
patch_prefix => "patch_"
}}
]},
%% kernel 配置
{kernel, [
{inet_dist_listen_min, 16000},
{inet_dist_listen_max, 17000},
{logger_level, ${logger_level}},
{logger, [
{filters, stop, [
{domain, {fun logger_filters:domain/2, {log, equal, [ms_base]}}},
{http_domain, {fun logger_filters:domain/2, {log, equal, [ms_http]}}}
]},
{handler, default, logger_std_h, #{
level => ${logger_level},
filter_default => stop,
filters => [{need_level, {fun logger_filters:level/2, {log, gteq, info}}}],
formatter => {logger_formatter, #{
max_size => 10000,
single_line => false,
legacy_header => false,
template => ["====| ", time, " | ", level, " | ", {id, [id], ["undefined"]}, " | ", mfa, ":", line, " | ", pid, " |====\n", msg, "\n"]
}}
}}
]}
]},
%% sasl 配置
{sasl, [
{sasl_error_logger, false}
]}
].