sysvmsg-stat.php 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. <?php
  2. define('CONFIG_FILE', __DIR__ . '/config.php');
  3. include __DIR__ . '/functions.php';
  4. //加载配置
  5. $cfg = [];
  6. load_config();
  7. $key = $cfg['sysvmsg_key'];
  8. $q = msg_get_queue($key);
  9. $stat = msg_stat_queue($q);
  10. ?>
  11. <!doctype html>
  12. <html>
  13. <head>
  14. <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
  15. <title>消息队列使用统计</title>
  16. <style type="text/css">
  17. body{
  18. font-size: 14px;
  19. }
  20. table{
  21. border-collapse: collapse;
  22. }
  23. th, td{
  24. padding: 5px 10px;
  25. border: 1px solid #000000;
  26. }
  27. .center{
  28. text-align: center;
  29. }
  30. .left{
  31. text-align: left;
  32. }
  33. .right{
  34. text-align: right;
  35. }
  36. </style>
  37. </head>
  38. <body>
  39. <h1>消息队列使用统计</h1>
  40. <table>
  41. <tr>
  42. <th class="center">KEY</th>
  43. <th class="center">描述</th>
  44. <th class="center">值</th>
  45. </tr>
  46. <tr>
  47. <td>msg_perm.uid</td>
  48. <td>所有者</td>
  49. <td class="right"><?php echo shell_exec("id {$stat['msg_perm.uid']}"); ?></td>
  50. </tr>
  51. <tr>
  52. <td>msg_perm.gid</td>
  53. <td>所有者组</td>
  54. <td class="right"><?php echo $stat['msg_perm.gid']; ?></td>
  55. </tr>
  56. <tr>
  57. <td>msg_perm.mode</td>
  58. <td>权限</td>
  59. <td class="right">0<?php echo decoct($stat['msg_perm.mode']); ?></td>
  60. </tr>
  61. <tr>
  62. <td>msg_stime</td>
  63. <td>最后发送消息时间</td>
  64. <td class="right"><?php echo $stat['msg_stime'] ? date('Y-m-d H:i:s', $stat['msg_stime']) . ' (' . $stat['msg_stime'] . ')' : '无'; ?></td>
  65. </tr>
  66. <tr>
  67. <td>msg_rtime</td>
  68. <td>最后接收消息时间</td>
  69. <td class="right"><?php echo $stat['msg_rtime'] ? date('Y-m-d H:i:s', $stat['msg_rtime']) . ' (' . $stat['msg_rtime'] . ')' : '无'; ?></td>
  70. </tr>
  71. <tr>
  72. <td>msg_ctime</td>
  73. <td>创建时间</td>
  74. <td class="right"><?php echo date('Y-m-d H:i:s', $stat['msg_ctime']) . ' (' . $stat['msg_ctime'] . ')'; ?></td>
  75. </tr>
  76. <tr>
  77. <td>msg_qnum</td>
  78. <td>当前队列中的消息数</td>
  79. <td class="right"><?php echo $stat['msg_qnum']; ?></td>
  80. </tr>
  81. <tr>
  82. <td>msgmnb</td>
  83. <td>队列空间上限</td>
  84. <td class="right"><?php echo $stat['msg_qbytes']; ?> 字节</td>
  85. </tr>
  86. <tr>
  87. <td>msgmni</td>
  88. <td>系统队列数量上限</td>
  89. <td class="right"><?php echo file_get_contents('/proc/sys/kernel/msgmni'); ?> 个</td>
  90. </tr>
  91. <tr>
  92. <td>msgmax</td>
  93. <td>单条消息空间上限</td>
  94. <td class="right"><?php echo file_get_contents('/proc/sys/kernel/msgmax'); ?> 字节</td>
  95. </tr>
  96. <tr>
  97. <td>msg_lspid</td>
  98. <td>最后发送消息的进程ID</td>
  99. <td class="right"><?php echo $stat['msg_lspid']; ?></td>
  100. </tr>
  101. <tr>
  102. <td>msg_lrpid</td>
  103. <td>最后接收消息的进程ID</td>
  104. <td class="right"><?php echo $stat['msg_lrpid']; ?></td>
  105. </tr>
  106. </table>
  107. </body>
  108. </html>