system.yaml 9.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271
  1. SystemMetricsCurrent:
  2. get:
  3. operationId: getSystemMetricsCurrent
  4. summary: 实时资源快照(CPU/内存/交换分区/磁盘分区/开机时间;psutil 缺失返回503)
  5. parameters:
  6. - $ref: '../components/parameters.yaml#/XRequestId'
  7. responses:
  8. '200':
  9. description: 实时资源快照
  10. content:
  11. application/json:
  12. schema:
  13. $ref: '../components/schemas.yaml#/SystemMetricsCurrentResponse'
  14. '401':
  15. $ref: '../components/responses.yaml#/AuthenticationError'
  16. '403':
  17. $ref: '../components/responses.yaml#/Forbidden'
  18. '500':
  19. $ref: '../components/responses.yaml#/InternalError'
  20. '503':
  21. $ref: '../components/responses.yaml#/MetricUnavailable'
  22. SystemMetricsHistory:
  23. get:
  24. operationId: getSystemMetricsHistory
  25. summary: 近 N 小时资源采样序列(升序,供趋势图;30 秒采样保留 7 天)
  26. parameters:
  27. - $ref: '../components/parameters.yaml#/XRequestId'
  28. - name: hours
  29. in: query
  30. required: false
  31. schema: {type: integer, minimum: 1, maximum: 720, default: 24}
  32. description: 查询窗口小时数(默认24)
  33. responses:
  34. '200':
  35. description: 采样序列
  36. content:
  37. application/json:
  38. schema:
  39. $ref: '../components/schemas.yaml#/SystemMetricHistoryResponse'
  40. '400':
  41. $ref: '../components/responses.yaml#/InvalidArgument'
  42. '401':
  43. $ref: '../components/responses.yaml#/AuthenticationError'
  44. '403':
  45. $ref: '../components/responses.yaml#/Forbidden'
  46. '500':
  47. $ref: '../components/responses.yaml#/InternalError'
  48. '503':
  49. $ref: '../components/responses.yaml#/MetricUnavailable'
  50. SystemProcess:
  51. get:
  52. operationId: getSystemProcess
  53. summary: 应用进程监控(CPU/内存/线程数/运行时长/运行时版本)
  54. parameters:
  55. - $ref: '../components/parameters.yaml#/XRequestId'
  56. responses:
  57. '200':
  58. description: 进程监控数据
  59. content:
  60. application/json:
  61. schema:
  62. $ref: '../components/schemas.yaml#/SystemProcessResponse'
  63. '401':
  64. $ref: '../components/responses.yaml#/AuthenticationError'
  65. '403':
  66. $ref: '../components/responses.yaml#/Forbidden'
  67. '500':
  68. $ref: '../components/responses.yaml#/InternalError'
  69. '503':
  70. $ref: '../components/responses.yaml#/MetricUnavailable'
  71. SystemStorageUsage:
  72. get:
  73. operationId: getSystemStorageUsage
  74. summary: 存储目录占用统计(七个存储子目录实时遍历)
  75. parameters:
  76. - $ref: '../components/parameters.yaml#/XRequestId'
  77. responses:
  78. '200':
  79. description: 存储占用列表
  80. content:
  81. application/json:
  82. schema:
  83. $ref: '../components/schemas.yaml#/SystemStorageUsageResponse'
  84. '401':
  85. $ref: '../components/responses.yaml#/AuthenticationError'
  86. '403':
  87. $ref: '../components/responses.yaml#/Forbidden'
  88. '500':
  89. $ref: '../components/responses.yaml#/InternalError'
  90. SystemConverter:
  91. get:
  92. operationId: getSystemConverterStatus
  93. summary: LibreOffice 转换器状态(存活/并发占用/累计成功失败计数)
  94. parameters:
  95. - $ref: '../components/parameters.yaml#/XRequestId'
  96. responses:
  97. '200':
  98. description: 转换器状态
  99. content:
  100. application/json:
  101. schema:
  102. $ref: '../components/schemas.yaml#/SystemConverterResponse'
  103. '401':
  104. $ref: '../components/responses.yaml#/AuthenticationError'
  105. '403':
  106. $ref: '../components/responses.yaml#/Forbidden'
  107. '500':
  108. $ref: '../components/responses.yaml#/InternalError'
  109. SystemHealth:
  110. get:
  111. operationId: runSystemHealthCheck
  112. summary: 一键体检(数据库/存储可写/转换器/备份目标/信封加密逐项探测)
  113. parameters:
  114. - $ref: '../components/parameters.yaml#/XRequestId'
  115. responses:
  116. '200':
  117. description: 体检结果(逐项 ok/detail,失败项不报错仅标记)
  118. content:
  119. application/json:
  120. schema:
  121. $ref: '../components/schemas.yaml#/SystemHealthResponse'
  122. '401':
  123. $ref: '../components/responses.yaml#/AuthenticationError'
  124. '403':
  125. $ref: '../components/responses.yaml#/Forbidden'
  126. '500':
  127. $ref: '../components/responses.yaml#/InternalError'
  128. SystemInfo:
  129. get:
  130. operationId: getSystemInfo
  131. summary: 系统信息卡片(契约版本/后端类型/运行环境/数据库/启动时间/关键路径)
  132. parameters:
  133. - $ref: '../components/parameters.yaml#/XRequestId'
  134. responses:
  135. '200':
  136. description: 系统信息
  137. content:
  138. application/json:
  139. schema:
  140. $ref: '../components/schemas.yaml#/SystemInfoResponse'
  141. '401':
  142. $ref: '../components/responses.yaml#/AuthenticationError'
  143. '403':
  144. $ref: '../components/responses.yaml#/Forbidden'
  145. '500':
  146. $ref: '../components/responses.yaml#/InternalError'
  147. SystemRuntimeConfig:
  148. get:
  149. operationId: getSystemRuntimeConfig
  150. summary: 运行参数只读总览(脱敏:密钥类仅显示是否已配置)
  151. parameters:
  152. - $ref: '../components/parameters.yaml#/XRequestId'
  153. responses:
  154. '200':
  155. description: 分类运行参数列表
  156. content:
  157. application/json:
  158. schema:
  159. $ref: '../components/schemas.yaml#/SystemRuntimeConfigResponse'
  160. '401':
  161. $ref: '../components/responses.yaml#/AuthenticationError'
  162. '403':
  163. $ref: '../components/responses.yaml#/Forbidden'
  164. '500':
  165. $ref: '../components/responses.yaml#/InternalError'
  166. SystemLogs:
  167. get:
  168. operationId: getSystemLogs
  169. summary: 运行日志尾部 N 行(按 [LEVEL] 标记级别过滤;日志未启用返回空列表)
  170. parameters:
  171. - $ref: '../components/parameters.yaml#/XRequestId'
  172. - name: lines
  173. in: query
  174. required: false
  175. schema: {type: integer, minimum: 1, maximum: 5000, default: 500}
  176. description: 返回行数上限(默认500)
  177. - name: level
  178. in: query
  179. required: false
  180. schema: {type: string, enum: [DEBUG, INFO, WARNING, ERROR, CRITICAL]}
  181. description: 级别过滤(可选)
  182. responses:
  183. '200':
  184. description: 日志尾部
  185. content:
  186. application/json:
  187. schema:
  188. $ref: '../components/schemas.yaml#/SystemLogsResponse'
  189. '400':
  190. $ref: '../components/responses.yaml#/InvalidArgument'
  191. '401':
  192. $ref: '../components/responses.yaml#/AuthenticationError'
  193. '403':
  194. $ref: '../components/responses.yaml#/Forbidden'
  195. '500':
  196. $ref: '../components/responses.yaml#/InternalError'
  197. SystemLogsDownload:
  198. get:
  199. operationId: downloadSystemLog
  200. summary: 原始运行日志文件下载(日志审计页签单开窗口查看;日志审计权限)
  201. parameters:
  202. - $ref: '../components/parameters.yaml#/XRequestId'
  203. responses:
  204. '200':
  205. description: 日志文件流(text/plain 附件)
  206. content:
  207. text/plain:
  208. schema: {type: string, format: binary}
  209. '401':
  210. $ref: '../components/responses.yaml#/AuthenticationError'
  211. '403':
  212. $ref: '../components/responses.yaml#/Forbidden'
  213. '404':
  214. $ref: '../components/responses.yaml#/NotFound'
  215. '500':
  216. $ref: '../components/responses.yaml#/InternalError'
  217. SystemMaintenancePreviewCache:
  218. post:
  219. operationId: clearPreviewCache
  220. summary: 清空预览缓存目录(可重建;记 PREVIEW_CACHE_CLEAR 审计)
  221. parameters:
  222. - $ref: '../components/parameters.yaml#/XRequestId'
  223. responses:
  224. '200':
  225. description: 清理结果(删除文件数与释放字节数)
  226. content:
  227. application/json:
  228. schema:
  229. $ref: '../components/schemas.yaml#/SystemPreviewCacheClearResponse'
  230. '401':
  231. $ref: '../components/responses.yaml#/AuthenticationError'
  232. '403':
  233. $ref: '../components/responses.yaml#/Forbidden'
  234. '500':
  235. $ref: '../components/responses.yaml#/InternalError'
  236. SystemForceOffline:
  237. post:
  238. operationId: forceUserOffline
  239. summary: 强制下线(auth_version+1 使目标用户全部访问令牌立即失效;记 FORCE_OFFLINE 审计)
  240. parameters:
  241. - $ref: '../components/parameters.yaml#/XRequestId'
  242. - name: user_id
  243. in: path
  244. required: true
  245. schema: {type: integer, minimum: 1}
  246. responses:
  247. '200':
  248. description: 强制下线结果
  249. content:
  250. application/json:
  251. schema:
  252. $ref: '../components/schemas.yaml#/SystemForceOfflineResponse'
  253. '401':
  254. $ref: '../components/responses.yaml#/AuthenticationError'
  255. '403':
  256. $ref: '../components/responses.yaml#/Forbidden'
  257. '404':
  258. $ref: '../components/responses.yaml#/NotFound'
  259. '500':
  260. $ref: '../components/responses.yaml#/InternalError'