java - java进程文件描述符丢失并移动到/dev/null
问题描述
我们看到了一个奇怪的问题。我们有 hiveserver2 java 应用程序(Apache Hive)。当进程启动时,它将具有如下所示的文件描述符。
lr-x------ 1 mapr mapr 64 Sep 2 02:00 0 -> /dev/null
l-wx------ 1 mapr mapr 64 Sep 2 02:00 1 -> /opt/mapr/hive/hive-2.3/logs/hive-mapr-hiveserver2-m2-maprts-vm162-172.out
l-wx------ 1 mapr mapr 64 Sep 2 02:00 2 -> /opt/mapr/hive/hive-2.3/logs/hive-mapr-hiveserver2-m2-maprts-vm162-172.out
但是在某个时间文件描述符 '1' 更改为 /dev/null 。进程仍在运行
例如 :-
l-wx------ 1 mapr mapr 64 Sep 2 02:00 1 -> /dev/null
因此,我们能够在应用程序失败时捕获任何调试日志。我们启用的任何调试日志都会丢失到 /dev/null 。当我们重新启动应用程序时,一切都会恢复。
我不知道会出什么问题。我们检查了所有应用程序日志、系统日志但没有任何线索。任何帮助表示赞赏。
解决方案
推荐阅读
- c# - 来自指针的字节 [] 没有副本
- typescript - 我如何在 Nuxt vuex 商店中访问 $toast
- java - 当我们从一个jsp重定向到另一个jsp时,我想知道在spring boot web app中
- swift - 如何在 swift ios 中弯曲 UIImageview 的边缘?
- python - 如何从python中的json响应中获取元素
- android - 如何在android studio上使用mapbox显示室内地图
- android - MissingPluginException(在 Android 上未找到通道 plugins.flutter.io/firebase_core 上的 Firebase#initializeCore 方法的实现)
- c# - 如何模拟采用或返回 Span 的方法
- javascript - 当我运行 npm run serve 时,角度 5 服务器端渲染:通用错误 TypeError:无法读取未定义的属性“charAt”
- assembly - 链接错误:
.asm : 错误的目标文件