Files
rebar_server/game_server/config/sys_login.config
T
2026-05-19 11:30:21 +08:00

196 lines
11 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
[
% 登录服配置
{login_server,
[
{server_env, "internal"}, %% "internal" | "external"
{login_node_port, 18000}, %% "internal" | "external"
%% 日志文件配置
{logger, [
%% info日志
%% 使用ms_logger_std模板
{handler, info, ms_logger_std, #{
level => info,
config => #{
%% 输出文件路径
file => "log/info.log",
%% 时间检测,表示1000毫秒内最多处理500个日志事件,超出则丢弃新的日志事件
burst_limit_enable => true,
burst_limit_max_count => 500,
burst_limit_window_time => 1000,
%% 日志进程消息低于该值,使用异步通讯,反之则用同步通讯 =<dorp_mode_qlen,=表示不会启用同步通讯
sync_mode_qlen => 200,
%% 日志进程消息高于该值,丢弃新投递的消息,=<flush_qlen
drop_mode_qlen => 200,
%% 日志进程消息高于该值,丢弃信箱内的所有消息(语义上与drop_mode_qlen冲突,应该是系统不是实时监测消息队里,应该是定期监测??)
flush_qlen => 1000,
%% 单个文件最大字节数(200M)
max_no_bytes => 209715200,
%% 最多保留文件数(10个)
max_no_files => 10
},
%% 默认打印日志
%% 默认不打印日志,是否打印通过filters判断
filter_default => stop,
%% metadata的map结构中没有domain的日志会被输出到文件
filters => [
{domain, {fun logger_filters:domain/2, {log, equal, [ms_base]}}} %% 输出 do_main=[ms_base] 的日志
],
%% 输出格式
%% 输出格式使用logger_formatter模板
formatter => {logger_formatter, #{
%% 单行日志最多2000个字节
max_size => 2000,
%% 每个日志不分行,忽略msg里的~n,也是系统默认值
single_line => false,
%% 不增加默认标题,也是系统默认值
legacy_header => false,
template => ["====| ", time, " | ", level, " | ", {id, [id], ["undefined"]}, " | ", mfa, ":", line, " | ", pid, " |====\n", msg, "\n"] %% 输出格式,其中log_time,tag,id是调用方法时metadata中传入
}}
}},
%% error日志
%% 使用ms_logger_std模板
{handler, error, ms_logger_std, #{
level => error,
config => #{
%% 输出文件路径
file => "log/error.log",
%% 时间检测,表示1000毫秒内最多处理500个日志事件,超出则丢弃新的日志事件
burst_limit_enable => true,
burst_limit_max_count => 500,
burst_limit_window_time => 1000,
%% 日志进程消息低于该值,使用异步通讯,反之则用同步通讯 =<dorp_mode_qlen,=表示不会启用同步通讯
sync_mode_qlen => 200,
%% 日志进程消息高于该值,丢弃新投递的消息,=<flush_qlen
drop_mode_qlen => 200,
%% 日志进程消息高于该值,丢弃信箱内的所有消息(语义上与drop_mode_qlen冲突,应该是系统不是实时监测消息队里,应该是定期监测??)
flush_qlen => 1000,
%% 单个文件最大字节数(200M)
max_no_bytes => 209715200,
%% 最多保留文件数(10个)
max_no_files => 10
},
%% 默认不打印日志,是否打印通过filters判断
filter_default => stop,
%% metadata的map结构中没有domain的日志会被输出到文件
filters => [
{domain, {fun logger_filters:domain/2, {log, equal, [ms_base]}}} %% 输出 do_main=[ms_base] 的日志
],
%% 输出格式
%% 输出格式使用logger_formatter模板
formatter => {logger_formatter, #{
%% 单行日志最多10000个字节,出错的尽量完整输出
max_size => 10000,
%% 每个日志不分行,忽略~n,也是系统默认值
single_line => false,
%% 不增加默认标题,也是系统默认值
legacy_header => false,
template => ["====| ", time, " | ", level, " | ", {id, [id], ["undefined"]}, " | ", mfa, ":", line, " | ", pid, " |====\n", msg, "\n"] %% 输出格式,其中log_time,tag,id是调用方法时metadata中传入
}}
}},
%% http信息日志(info及以上级别)
{handler, http_log, ms_logger_std, #{
level => info,
config => #{
%% 输出文件路径
file => "log/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
},
%% 默认不打印日志,是否打印通过filters判断
filter_default => stop,
%% 只打印domain = [ms_http]的日志
filters => [
{http_domain, {fun logger_filters:domain/2, {log, equal, [ms_http]}}} %% 输出 do_main=[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"] %% 输出格式,其中log_time,tag,id是调用方法时metadata中传入
}}
}}
]}
]
},
%% ms_cache缓存配置
{ms_cache,
[
{data_node, undefined}, %% 缓存节点,undefined为缓存app启动在本节点
{cache_db_type, proc}, %% 缓存在内存的储存位置 proc | ets | mnesia(mnesia暂不支持)
{data_fmt, record}, %% 缓存数据存取的格式, record | map 默认为record
{db_save_time, 120000}, %% (定时同步参数)缓存定期同步到数据库的时间间隔,单位毫秒;默认值 600000
{db_save_count, 1000}, %% (定量同步参数)缓存待同步数量上限,达到数量触发同步数据库操作;默认值 1000
{db_driver, 'mysql-otp'}, %% 使用的数据库驱动(当前只支持mysql-otp第三方驱动,可扩展支持mongo和emysql
{db_user, "dhmmcadmin"}, %% 数据库用户
{db_pass, "dhmmc@4399$$"}, %% 数据库密码
{db_host, "172.16.14.176"}, %% 数据库地址
{db_port, 3306}, %% 数据库端口
{db_name, "dhmmc_s900_trunk_login"}, %% 数据库名
{db_encoding, utf8}, %% 数据库编码(mysql-otp驱动下没用到)
{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,
[
%% erlang节点间通讯端口号区域
{inet_dist_listen_min, 16000},
{inet_dist_listen_max, 17000},
%% 控制台日志输出
%% 最基本的日志等级,除非有设置module level,否则低于这个日志级别的日志都不会被输出,包括上面game_server的日志
{logger_level, debug}, %% todo 这里会有各疑问,linux下会存在erlang.log.x日志,输出等级以这个为主,目前还不了解这个日志从哪里设置,设置高级别减少日志输出
{logger, [
%% 总控过滤,默认不输出
{filters, stop, [
{domain, {fun logger_filters:domain/2, {log, equal, [ms_base]}}} %% 输出 do_main=[ms_base] 的日志
, {http_domain, {fun logger_filters:domain/2, {log, equal, [ms_http]}}} %% 输出 do_main=[ms_http] 的日志
]},
%% 控制台日志输出
%% 使用logger_std_h模板
{handler, default, logger_std_h, #{
%% 日志等级,linux该值该未none,linux不需要控制台日志输出;linux下live启动的时候也没日志。。。额
level => debug,
%% 其他没有列出的参数使用默认值
%% logger_level=info 及以上的日志会被输出
filter_default => stop,
%% 过滤条件
filters => [{need_level, {fun logger_filters:level/2, {log, gteq, info}}}],
%% 输出格式
formatter => {logger_formatter, #{
%% 单行日志最多10000个字节
max_size => 10000,
%% 每个日志不分行,忽略~n,也是系统默认值
single_line => false,
%% 不增加默认标题
legacy_header => false,
template => ["====| ", time, " | ", level, " | ", {id, [id], ["undefined"]}, " | ", mfa, ":", line, " | ", pid, " |====\n", msg, "\n"] %% 输出格式,其中log_time,tag,id是调用方法时metadata中传入
}}
}}
]}
]
},
%% sasl配置
{sasl,
[
%% 关闭SASL日志
{sasl_error_logger, false}
]
}
].