default.jfc 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!--
  3. Recommended way to edit .jfc files is to use Java Mission Control,
  4. see Window -> Flight Recorder Template Manager.
  5. -->
  6. <configuration version="1.0" name="Continuous" description="Low overhead configuration safe for continuous use in production environments, typically less than 1 % overhead." provider="Oracle">
  7. <producer uri="http://www.oracle.com/hotspot/jvm/" label="Oracle JDK">
  8. <control>
  9. <!--
  10. Contents of the control element is not read by the JVM, it's used
  11. by Java Mission Control to change settings that carry the control attribute.
  12. -->
  13. <selection name="gc-level" default="detailed" label="Garbage Collector">
  14. <option label="Off" name="off">off</option>
  15. <option label="Normal" name="detailed">normal</option>
  16. <option label="All" name="all">all</option>
  17. </selection>
  18. <condition name="gc-enabled-normal" true="true" false="false">
  19. <or>
  20. <test name="gc-level" operator="equal" value="normal"/>
  21. <test name="gc-level" operator="equal" value="all"/>
  22. </or>
  23. </condition>
  24. <condition name="gc-enabled-all" true="true" false="false">
  25. <test name="gc-level" operator="equal" value="all"/>
  26. </condition>
  27. <selection name="compiler-level" default="normal" label="Compiler">
  28. <option label="Off" name="off">off</option>
  29. <option label="Normal" name="normal">normal</option>
  30. <option label="Detailed" name="detailed">detailed</option>
  31. <option label="All" name="all">all</option>
  32. </selection>
  33. <condition name="compiler-enabled" true="false" false="true">
  34. <test name="compiler-level" operator="equal" value="off"/>
  35. </condition>
  36. <condition name="compiler-enabled-failure" true="true" false="false">
  37. <or>
  38. <test name="compiler-level" operator="equal" value="detailed"/>
  39. <test name="compiler-level" operator="equal" value="all"/>
  40. </or>
  41. </condition>
  42. <condition name="compiler-sweeper-threshold" true="0 ms" false="100 ms">
  43. <test name="compiler-level" operator="equal" value="all"/>
  44. </condition>
  45. <condition name="compiler-compilation-threshold" true="1000 ms">
  46. <test name="compiler-level" operator="equal" value="normal"/>
  47. </condition>
  48. <condition name="compiler-compilation-threshold" true="100 ms">
  49. <test name="compiler-level" operator="equal" value="detailed"/>
  50. </condition>
  51. <condition name="compiler-compilation-threshold" true="0 ms">
  52. <test name="compiler-level" operator="equal" value="all"/>
  53. </condition>
  54. <condition name="compiler-phase-threshold" true="60 s">
  55. <test name="compiler-level" operator="equal" value="normal"/>
  56. </condition>
  57. <condition name="compiler-phase-threshold" true="10 s">
  58. <test name="compiler-level" operator="equal" value="detailed"/>
  59. </condition>
  60. <condition name="compiler-phase-threshold" true="0 s">
  61. <test name="compiler-level" operator="equal" value="all"/>
  62. </condition>
  63. <selection name="method-sampling-interval" default="normal" label="Method Sampling">
  64. <option label="Off" name="off">999 d</option>
  65. <option label="Normal" name="normal">20 ms</option>
  66. <option label="Maximum" name="maximum">10 ms</option>
  67. </selection>
  68. <condition name="method-sampling-enabled" true="false" false="true">
  69. <test name="method-sampling-interval" operator="equal" value="999 d"/>
  70. </condition>
  71. <selection name="thread-dump-interval" default="normal" label="Thread Dump">
  72. <option label="Off" name="off">999 d</option>
  73. <option label="At least Once" name="normal">everyChunk</option>
  74. <option label="Every 60 s" name="everyMinute">60 s</option>
  75. <option label="Every 10 s" name="everyTenSecond">10 s</option>
  76. <option label="Every 1 s" name="everySecond">1 s</option>
  77. </selection>
  78. <condition name="thread-dump-enabled" true="false" false="true">
  79. <test name="thread-dump-interval" operator="equal" value="999 d"/>
  80. </condition>
  81. <selection name="exception-level" default="errors" label="Exceptions">
  82. <option label="Off" name="off">off</option>
  83. <option label="Errors Only" name="errors">errors</option>
  84. <option label="All Exceptions, including Errors" name="all">all</option>
  85. </selection>
  86. <condition name="enable-errors" true="true" false="false">
  87. <or>
  88. <test name="exception-level" operator="equal" value="errors"/>
  89. <test name="exception-level" operator="equal" value="all"/>
  90. </or>
  91. </condition>
  92. <condition name="enable-exceptions" true="true" false="false">
  93. <test name="exception-level" operator="equal" value="all"/>
  94. </condition>
  95. <text name="synchronization-threshold" label="Synchronization Threshold" contentType="timespan" minimum="0 s">20 ms</text>
  96. <text name="file-io-threshold" label="File I/O Threshold" contentType="timespan" minimum="0 s">20 ms</text>
  97. <text name="socket-io-threshold" label="Socket I/O Threshold" contentType="timespan" minimum="0 s">20 ms</text>
  98. <flag name="heap-statistics-enabled" label="Heap Statistics">false</flag>
  99. <flag name="class-loading-enabled" label="Class Loading">false</flag>
  100. <flag name="allocation-profiling-enabled" label="Allocation Profiling">false</flag>
  101. </control>
  102. <event path="java/statistics/thread_allocation">
  103. <setting name="enabled">true</setting>
  104. <setting name="period">everyChunk</setting>
  105. </event>
  106. <event path="java/statistics/class_loading">
  107. <setting name="enabled">true</setting>
  108. <setting name="period">1000 ms</setting>
  109. </event>
  110. <event path="java/statistics/threads">
  111. <setting name="enabled">true</setting>
  112. <setting name="period">1000 ms</setting>
  113. </event>
  114. <event path="java/thread_start">
  115. <setting name="enabled">true</setting>
  116. </event>
  117. <event path="java/thread_end">
  118. <setting name="enabled">true</setting>
  119. </event>
  120. <event path="java/thread_sleep">
  121. <setting name="enabled">true</setting>
  122. <setting name="stackTrace">true</setting>
  123. <setting name="threshold" control="synchronization-threshold">20 ms</setting>
  124. </event>
  125. <event path="java/thread_park">
  126. <setting name="enabled">true</setting>
  127. <setting name="stackTrace">true</setting>
  128. <setting name="threshold" control="synchronization-threshold">20 ms</setting>
  129. </event>
  130. <event path="java/monitor_enter">
  131. <setting name="enabled">true</setting>
  132. <setting name="stackTrace">true</setting>
  133. <setting name="threshold" control="synchronization-threshold">20 ms</setting>
  134. </event>
  135. <event path="java/monitor_wait">
  136. <setting name="enabled">true</setting>
  137. <setting name="stackTrace">true</setting>
  138. <setting name="threshold" control="synchronization-threshold">20 ms</setting>
  139. </event>
  140. <event path="vm/class/load">
  141. <setting name="enabled" control="class-loading-enabled">false</setting>
  142. <setting name="stackTrace">true</setting>
  143. <setting name="threshold">0 ms</setting>
  144. </event>
  145. <event path="vm/class/unload">
  146. <setting name="enabled" control="class-loading-enabled">false</setting>
  147. </event>
  148. <event path="vm/info">
  149. <setting name="enabled">true</setting>
  150. <setting name="period">everyChunk</setting>
  151. </event>
  152. <event path="vm/initial_system_property">
  153. <setting name="enabled">true</setting>
  154. <setting name="period">everyChunk</setting>
  155. </event>
  156. <event path="vm/prof/execution_sample">
  157. <setting name="enabled" control="method-sampling-enabled">true</setting>
  158. <setting name="period" control="method-sampling-interval">20 ms</setting>
  159. </event>
  160. <event path="vm/prof/execution_sampling_info">
  161. <setting name="enabled">false</setting>
  162. <setting name="threshold">1 ms</setting>
  163. </event>
  164. <event path="vm/runtime/execute_vm_operation">
  165. <setting name="enabled">true</setting>
  166. <setting name="threshold">10 ms</setting>
  167. </event>
  168. <event path="vm/runtime/thread_dump">
  169. <setting name="enabled" control="thread-dump-enabled">true</setting>
  170. <setting name="period" control="thread-dump-interval">everyChunk</setting>
  171. </event>
  172. <event path="vm/flag/long">
  173. <setting name="enabled">true</setting>
  174. <setting name="period">everyChunk</setting>
  175. </event>
  176. <event path="vm/flag/ulong">
  177. <setting name="enabled">true</setting>
  178. <setting name="period">everyChunk</setting>
  179. </event>
  180. <event path="vm/flag/double">
  181. <setting name="enabled">true</setting>
  182. <setting name="period">everyChunk</setting>
  183. </event>
  184. <event path="vm/flag/boolean">
  185. <setting name="enabled">true</setting>
  186. <setting name="period">everyChunk</setting>
  187. </event>
  188. <event path="vm/flag/string">
  189. <setting name="enabled">true</setting>
  190. <setting name="period">everyChunk</setting>
  191. </event>
  192. <event path="vm/flag/long_changed">
  193. <setting name="enabled">true</setting>
  194. </event>
  195. <event path="vm/flag/ulong_changed">
  196. <setting name="enabled">true</setting>
  197. </event>
  198. <event path="vm/flag/double_changed">
  199. <setting name="enabled">true</setting>
  200. </event>
  201. <event path="vm/flag/boolean_changed">
  202. <setting name="enabled">true</setting>
  203. </event>
  204. <event path="vm/flag/string_changed">
  205. <setting name="enabled">true</setting>
  206. </event>
  207. <event path="vm/gc/detailed/object_count">
  208. <setting name="enabled" control="heap-statistics-enabled">false</setting>
  209. <setting name="period">everyChunk</setting>
  210. </event>
  211. <event path="vm/gc/configuration/gc">
  212. <setting name="enabled" control="gc-enabled-normal">true</setting>
  213. <setting name="period">everyChunk</setting>
  214. </event>
  215. <event path="vm/gc/configuration/heap">
  216. <setting name="enabled" control="gc-enabled-normal">true</setting>
  217. <setting name="period">everyChunk</setting>
  218. </event>
  219. <event path="vm/gc/configuration/young_generation">
  220. <setting name="enabled" control="gc-enabled-normal">true</setting>
  221. <setting name="period">everyChunk</setting>
  222. </event>
  223. <event path="vm/gc/configuration/tlab">
  224. <setting name="enabled" control="gc-enabled-normal">true</setting>
  225. <setting name="period">everyChunk</setting>
  226. </event>
  227. <event path="vm/gc/configuration/survivor">
  228. <setting name="enabled" control="gc-enabled-normal">true</setting>
  229. <setting name="period">everyChunk</setting>
  230. </event>
  231. <event path="vm/gc/detailed/object_count_after_gc">
  232. <setting name="enabled">false</setting>
  233. </event>
  234. <event path="vm/gc/heap/summary">
  235. <setting name="enabled" control="gc-enabled-normal">true</setting>
  236. </event>
  237. <event path="vm/gc/heap/ps_summary">
  238. <setting name="enabled" control="gc-enabled-normal">true</setting>
  239. </event>
  240. <event path="vm/gc/heap/metaspace_summary">
  241. <setting name="enabled" control="gc-enabled-normal">true</setting>
  242. </event>
  243. <event path="vm/gc/metaspace/gc_threshold">
  244. <setting name="enabled" control="gc-enabled-normal">true</setting>
  245. </event>
  246. <event path="vm/gc/metaspace/allocation_failure">
  247. <setting name="enabled" control="gc-enabled-normal">true</setting>
  248. <setting name="stackTrace">true</setting>
  249. </event>
  250. <event path="vm/gc/metaspace/out_of_memory">
  251. <setting name="enabled" control="gc-enabled-normal">true</setting>
  252. <setting name="stackTrace">true</setting>
  253. </event>
  254. <event path="vm/gc/metaspace/chunk_free_list_summary">
  255. <setting name="enabled" control="gc-enabled-normal">true</setting>
  256. </event>
  257. <event path="vm/gc/collector/garbage_collection">
  258. <setting name="enabled" control="gc-enabled-normal">true</setting>
  259. <setting name="threshold">0 ms</setting>
  260. </event>
  261. <event path="vm/gc/collector/parold_garbage_collection">
  262. <setting name="enabled" control="gc-enabled-normal">true</setting>
  263. <setting name="threshold">0 ms</setting>
  264. </event>
  265. <event path="vm/gc/collector/young_garbage_collection">
  266. <setting name="enabled" control="gc-enabled-normal">true</setting>
  267. <setting name="threshold">0 ms</setting>
  268. </event>
  269. <event path="vm/gc/collector/old_garbage_collection">
  270. <setting name="enabled" control="gc-enabled-normal">true</setting>
  271. <setting name="threshold">0 ms</setting>
  272. </event>
  273. <event path="vm/gc/collector/g1_garbage_collection">
  274. <setting name="enabled" control="gc-enabled-normal">true</setting>
  275. <setting name="threshold">0 ms</setting>
  276. </event>
  277. <event path="vm/gc/phases/pause">
  278. <setting name="enabled" control="gc-enabled-normal">true</setting>
  279. <setting name="threshold">0 ms</setting>
  280. </event>
  281. <event path="vm/gc/phases/pause_level_1">
  282. <setting name="enabled" control="gc-enabled-normal">true</setting>
  283. <setting name="threshold">0 ms</setting>
  284. </event>
  285. <event path="vm/gc/phases/pause_level_2">
  286. <setting name="enabled" control="gc-enabled-normal">true</setting>
  287. <setting name="threshold">0 ms</setting>
  288. </event>
  289. <event path="vm/gc/phases/pause_level_3">
  290. <setting name="enabled" control="gc-enabled-all">false</setting>
  291. <setting name="threshold">0 ms</setting>
  292. </event>
  293. <event path="vm/gc/reference/statistics">
  294. <setting name="enabled" control="gc-enabled-normal">true</setting>
  295. </event>
  296. <event path="vm/gc/detailed/promotion_failed">
  297. <setting name="enabled" control="gc-enabled-normal">true</setting>
  298. </event>
  299. <event path="vm/gc/detailed/evacuation_failed">
  300. <setting name="enabled" control="gc-enabled-normal">true</setting>
  301. </event>
  302. <event path="vm/gc/detailed/evacuation_info">
  303. <setting name="enabled" control="gc-enabled-normal">true</setting>
  304. </event>
  305. <event path="vm/gc/detailed/concurrent_mode_failure">
  306. <setting name="enabled" control="gc-enabled-normal">true</setting>
  307. </event>
  308. <event path="vm/gc/detailed/allocation_requiring_gc">
  309. <setting name="enabled" control="gc-enabled-all">false</setting>
  310. <setting name="stackTrace">true</setting>
  311. </event>
  312. <event path="vm/compiler/config">
  313. <setting name="enabled" control="compiler-enabled">true</setting>
  314. <setting name="period">everyChunk</setting>
  315. </event>
  316. <event path="vm/compiler/stats">
  317. <setting name="enabled" control="compiler-enabled">true</setting>
  318. <setting name="period">1000 ms</setting>
  319. </event>
  320. <event path="vm/compiler/compilation">
  321. <setting name="enabled" control="compiler-enabled">true</setting>
  322. <setting name="threshold" control="compiler-compilation-threshold">1000 ms</setting>
  323. </event>
  324. <event path="vm/compiler/phase">
  325. <setting name="enabled" control="compiler-enabled">true</setting>
  326. <setting name="threshold" control="compiler-phase-threshold">60 s</setting>
  327. </event>
  328. <event path="vm/compiler/failure">
  329. <setting name="enabled" control="compiler-enabled-failure">false</setting>
  330. </event>
  331. <event path="vm/code_sweeper/config">
  332. <setting name="enabled" control="compiler-enabled">true</setting>
  333. <setting name="period">everyChunk</setting>
  334. </event>
  335. <event path="vm/code_sweeper/stats">
  336. <setting name="enabled" control="compiler-enabled">true</setting>
  337. <setting name="period">everyChunk</setting>
  338. </event>
  339. <event path="vm/code_sweeper/sweep">
  340. <setting name="enabled" control="compiler-enabled">true</setting>
  341. <setting name="threshold" control="compiler-sweeper-threshold">100 ms</setting>
  342. </event>
  343. <event path="vm/code_cache/config">
  344. <setting name="enabled" control="compiler-enabled">true</setting>
  345. <setting name="period">everyChunk</setting>
  346. </event>
  347. <event path="vm/code_cache/stats">
  348. <setting name="enabled" control="compiler-enabled">true</setting>
  349. <setting name="period">everyChunk</setting>
  350. </event>
  351. <event path="vm/code_cache/full">
  352. <setting name="enabled" control="compiler-enabled">true</setting>
  353. </event>
  354. <event path="os/information">
  355. <setting name="enabled">true</setting>
  356. <setting name="period">everyChunk</setting>
  357. </event>
  358. <event path="os/processor/cpu_information">
  359. <setting name="enabled">true</setting>
  360. <setting name="period">everyChunk</setting>
  361. </event>
  362. <event path="os/processor/context_switch_rate">
  363. <setting name="enabled" control="compiler-enabled">true</setting>
  364. <setting name="period">10 s</setting>
  365. </event>
  366. <event path="os/processor/cpu_load">
  367. <setting name="enabled">true</setting>
  368. <setting name="period">1000 ms</setting>
  369. </event>
  370. <event path="os/processor/cpu_tsc">
  371. <setting name="enabled">true</setting>
  372. <setting name="period">everyChunk</setting>
  373. </event>
  374. <event path="os/system_process">
  375. <setting name="enabled">true</setting>
  376. <setting name="period">everyChunk</setting>
  377. </event>
  378. <event path="os/initial_environment_variable">
  379. <setting name="enabled">true</setting>
  380. <setting name="period">everyChunk</setting>
  381. </event>
  382. <event path="os/memory/physical_memory">
  383. <setting name="enabled">true</setting>
  384. <setting name="period">everyChunk</setting>
  385. </event>
  386. <event path="java/object_alloc_in_new_TLAB">
  387. <setting name="enabled" control="allocation-profiling-enabled">false</setting>
  388. <setting name="stackTrace">true</setting>
  389. </event>
  390. <event path="java/object_alloc_outside_TLAB">
  391. <setting name="enabled" control="allocation-profiling-enabled">false</setting>
  392. <setting name="stackTrace">true</setting>
  393. </event>
  394. </producer>
  395. <producer uri="http://www.oracle.com/hotspot/jdk/" label="Oracle JDK">
  396. <event path="java/file_read">
  397. <setting name="enabled">true</setting>
  398. <setting name="stackTrace">true</setting>
  399. <setting name="threshold" control="http://www.oracle.com/hotspot/jvm/file-io-threshold">20 ms</setting>
  400. </event>
  401. <event path="java/file_write">
  402. <setting name="enabled">true</setting>
  403. <setting name="stackTrace">true</setting>
  404. <setting name="threshold" control="http://www.oracle.com/hotspot/jvm/file-io-threshold">20 ms</setting>
  405. </event>
  406. <event path="java/socket_read">
  407. <setting name="enabled">true</setting>
  408. <setting name="stackTrace">true</setting>
  409. <setting name="threshold" control="http://www.oracle.com/hotspot/jvm/socket-io-threshold">20 ms</setting>
  410. </event>
  411. <event path="java/socket_write">
  412. <setting name="enabled">true</setting>
  413. <setting name="stackTrace">true</setting>
  414. <setting name="threshold" control="http://www.oracle.com/hotspot/jvm/socket-io-threshold">20 ms</setting>
  415. </event>
  416. <event path="java/exception_throw">
  417. <setting name="enabled" control="http://www.oracle.com/hotspot/jvm/enable-exceptions">false</setting>
  418. <setting name="stackTrace">true</setting>
  419. </event>
  420. <event path="java/error_throw">
  421. <setting name="enabled" control="http://www.oracle.com/hotspot/jvm/enable-errors">true</setting>
  422. <setting name="stackTrace">true</setting>
  423. </event>
  424. <event path="java/statistics/throwables">
  425. <setting name="enabled">true</setting>
  426. <setting name="period">1000 ms</setting>
  427. </event>
  428. </producer>
  429. <producer uri="http://www.oracle.com/hotspot/jfr-info/" label="Oracle JDK">
  430. <event path="recordings/recording">
  431. <setting name="enabled">true</setting>
  432. </event>
  433. <event path="recordings/recording_setting">
  434. <setting name="enabled">true</setting>
  435. </event>
  436. </producer>
  437. </configuration>