voip - Opensips 在运行两三天后突然崩溃
问题描述
我正在使用opensips,它工作正常,但2-3天后突然崩溃。不明白下面的日志
CRITICAL:core:receive_fd: EOF on 17
INFO:core:handle_sigs: child process 14090 exited by a signal 11
INFO:core:handle_sigs: core was generated
INFO:core:handle_sigs: terminating due to SIGCHLD
CRITICAL:core:receive_fd: EOF on 17
INFO:core:handle_sigs: child process 14090 exited by a signal 11
INFO:core:handle_sigs: core was generated
INFO:core:handle_sigs: terminating due to SIGCHLD
INFO:core:sig_usr: signal 15 received
我如何调查我的 opensips 到底出了什么问题。我正在使用 Ubuntu,我应该将其更改为 Centos 还是 Debian?或者上面的日志指示错误是什么?任何想法。
解决方案
除了崩溃之外,日志没有告诉您任何其他信息。问题是为什么。
如果您在不同的环境中运行相同的版本和配置,您可能会遇到相同的问题。
崩溃的时间依赖性表明它在满足特定竞争条件时崩溃。这可能是一个带有无效呼叫者 ID 的呼叫,您试图将其解析为一个 int、一个很少被称为被调用的路由块、系统上的资源限制或完全不同的东西。
这是一条非常通用的崩溃消息,因此无需更多调试,这只是猜测,所以让我们启用调试:
OpenSIPs 配置文件的开头是我们启用的地方,这是默认配置的外观(假设您已经构建了标准模板):
####### Global Parameters #########
log_level=3
log_stderror=no
log_facility=LOG_LOCAL0
children=4
/* uncomment the following lines to enable debugging */
#debug_mode=yes
如果您将其更改为:
####### Global Parameters #########
log_level=8
log_stderror=yes
log_facility=LOG_LOCAL0
children=4
/* uncomment the following lines to enable debugging */
debug_mode=yes
您将启用调试功能,并在 syslog 中提供更多信息。
完成此操作后,请等待 2 天,直到它崩溃,您将得到关于哪个模块/路由块/数据包导致您的实例崩溃的答案。
之后,您可以将输出与配置文件一起发布到此处,但 OpenSIP 或 Kamailio 邮件列表中的某个人之前很有可能遇到过同样的问题。
推荐阅读
- javascript - 无法通过客户端上的 javascript 通过 Imgur API 上传视频
- pytorch - PyTorch 看不到 GPU(torch.cuda.is_availble() 返回 False)
- javascript - 如何在 JavaScript 中找到两个数组的差异并在新数组中形成差异?
- python - Scrapy 不断爬行,永不停息…… CrawlSpider 规则
- json - 如何从 API JSON 响应中提取数据?
- unity3d - 物体没有正确旋转统一?
- python - 在 Python (OpenCV) 中计算人脸旋转
- swiftui - SwiftUI“不能在属性初始化器中使用实例成员'numberOfDevice';属性初始化器在'self'可用之前运行”错误
- selenium - can I run a selenium driver with Quarkus?
- android - 如何将 ListView 构建器与 Providers 一起使用?