【 使用环境 】生产环境
【 OB or 其他组件 】
【 使用版本 】
【问题描述】清晰明确描述问题
【复现路径】问题出现前后相关操作
【附件及日志】
我的ocp 数据库 发现系统盘占用异常
发现 /home/doy/obproxy/log 这个代理目录巨大
我应该通过那个参数管理下
6 个赞
我的obproxy 是单独的3个服务器。 我好奇这个日志是怎么产生的
1 个赞
1、obproxy日志文件介绍
| 文件名称 | 文件介绍 |
|---|---|
| obproxy_diagnosis.log | 记录 ODP 登录、启动、断连接、路由错误等信息的诊断日志。 |
| obproxy_digest.log | 记录执行时间超过 query_digest_time_threshold 配置项的 SQL 和执行失败的 SQL 相关信息。 |
| obproxy_error.log | 记录执行失败的 SQL 相关信息。 |
| obproxy_slow.log | 记录慢 SQL 请求信息的日志。 |
| obproxy_stat.log | 统计日志,记录一段时间内的 SQL 执行情况。 |
| obproxy_trace.log | 记录全链路诊断信息的日志。 |
| obproxy.log | 记录 ODP 详细信息的日志,内容最全面。 |
2、如何控制日志文件清理
-
log_file_percentage:用于设置 OBProxy 的日志阈值,超过该阈值会进行日志清理,默认为 80%。示例命令如下。
ALTER SYSTEM SET log_file_percentage=75;
-
log_dir_size_threshold:日志目录最大可用空间,默认为 10G。示例命令如下。
obclient> ALTER SYSTEM SET log_dir_size_threshold=15G;
-
max_log_file_size:日志文件最大大小,默认为 256M。示例命令如下。
obclient> ALTER SYSTEM SET max_log_file_size= 200M;
1 个赞
6666
看看
1 个赞
- 日志级别调整,可以通过调整日志的级别来减少日志文件的输出量。OceanBase 支持调整日志的详细程度,例如从 DEBUG 到 INFO,甚至 ERROR。这样可以显著减少日志文件的大小;
- 日志轮转,对于已经存在的日志文件,可以设置日志轮转策略来自动管理日志文件的大小。这可以通过 logrotate 或 cron 脚本来实现;
- 限制单个日志文件的大小,在某些情况下,你可能希望限制单个日志文件的最大大小。这可以通过在创建或配置日志时指定最大文件大小来实现;
- 清理旧日志,定期清理旧的、不再需要的日志文件也是一个好方法。这可以通过编写一个简单的脚本在 cron 中定期运行来实现;
- 监控和警报,设置监控和警报系统来监控日志文件的大小和增长速度,可以在日志文件变得过大之前采取行动。可以使用系统监控工具如 Nagios, Zabbix 等来监控文件大小,并在达到阈值时发送警报。
写得真好。
学习
控制 ODP 日志大小的方法
根据您提供的信息,您希望控制 /home/doy/obproxy/log 目录下的日志文件大小。ODP(OceanBase Database Proxy)的日志管理可以通过配置几个关键参数来实现,这些参数包括 log_dir_size_threshold 和 log_file_percentage 等。下面是具体的操作步骤和建议:
-
了解当前日志文件的产生情况
- 从您上传的图片中可以看出,日志目录下有多种类型的日志文件,如
obproxy_digest.log,obproxy.log等。这些日志分别记录了不同类型的事件,例如执行时间超过阈值的SQL请求、详细的OBProxy操作等。
- 从您上传的图片中可以看出,日志目录下有多种类型的日志文件,如
-
设置日志所在目录的最大可用空间阈值
- 您可以使用
log_dir_size_threshold参数来设置ODP日志所在目录的最大可用空间。当日志占用的空间超过这个阈值时,系统会自动清理一些旧的日志以释放空间。 - 示例命令如下:
ALTER proxyconfig SET log_dir_size_threshold=50GB; - 这条命令将最大日志占用空间限制为50GB。如果需要调整到其他值,请相应地修改数字。
- 您可以使用
-
调整日志文件占用可用空间的比例
- 使用
log_file_percentage可以进一步精细控制日志文件实际占用的日志目录空间比例。例如,如果您不希望日志文件占用超过日志目录可用空间的80%,则可以执行以下命令:ALTER proxyconfig SET log_file_percentage=80; - 此设置意味着日志文件的实际占用空间将不超过
min(log_dir_size_threshold, 日志文件夹可用空间 * log_file_percentage)的值。
- 使用
-
查看或调整其他相关日志配置项
- 除了上述两个参数外,还有其他一些可能影响日志大小的配置项,比如
max_log_file_size(单个日志文件的最大尺寸)、log_cleanup_interval(日志清理任务的间隔时间)等。合理配置这些选项有助于更好地管理和控制日志存储。
- 除了上述两个参数外,还有其他一些可能影响日志大小的配置项,比如
基于上述文档片段的信息,您可以按照自己的需求选择合适的参数进行配置。如果您发现日志依然增长过快或存在异常大文件的情况,可能还需要进一步检查OBProxy的工作状态以及是否有频繁错误导致大量日志生成。
如果以上方法无法解决问题或者您在操作过程中遇到任何困难,请随时联系OceanBase的技术支持获取更多帮助。
具体信息可参考以下文档:
