status.rst 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277
  1. .. _config_serverstatus:
  2. Status
  3. ======
  4. The Server Status page has two tabs to summarize the current status of GeoServer. The Status tab provides a summary of server configuration parameters and run-time status. The modules tab provides the status of the various modules installed on the server. This page provides a useful diagnostic tool in a testing environment.
  5. Server Status
  6. -------------
  7. .. figure:: img/server_status.png
  8. Status Page (default tab)
  9. Status Field Descriptions
  10. ^^^^^^^^^^^^^^^^^^^^^^^^^
  11. The following table describes the current status indicators.
  12. .. list-table::
  13. :widths: 30 70
  14. :header-rows: 1
  15. * - Option
  16. - Description
  17. * - Data directory
  18. - Shows the path to the GeoServer data directory (``GEOSERVER_DATA_DIR`` property).
  19. * - Locks
  20. - A WFS has the ability to lock features to prevent more than one person from updating the feature at one time. If data is locked, edits can be performed by a single WFS editor. When the edits are posted, the locks are released and features can be edited by other WFS editors. A zero in the locks field means all locks are released. If locks is non-zero then a client has reserved some content for editing.
  21. Press :guilabel:`Free locks` to release all feature locks currently held by the server and update the field value to zero.
  22. * - Connections
  23. - Refers to the numbers of stores GeoServer is connected to, in the above case 9, that are enabled and available.
  24. * - Memory Usage
  25. - The amount of memory currently used by GeoServer. In the above example, 174 MB of memory used out of a total of 3.56 GB available to Java.
  26. Press :guilabel:`Free Memory` to recycle unused memory by running the garbage collector.
  27. * - JVM Version
  28. - Denotes which version of the JVM (Java Virtual Machine) is being used to power the server. Here the JVM is AdoptOpenJDK 1.8.0_282.
  29. * - Java Rendering Engine
  30. - Shows the rendering engine used for vector operations.
  31. * - Available Fonts
  32. - Shows the number of fonts available. Selecting the link will show the full list.
  33. * - Native JAI
  34. - GeoServer uses `Java Advanced Imaging <https://www.oracle.com/java/technologies/java-archive-downloads-java-client-downloads.html>`__ (JAI) framework for image rendering and coverage manipulation.
  35. We recommend the use of JAI-EXT operations for greater stability.
  36. * - Native JAI ImageIO
  37. - GeoServer uses `JAI Image IO <https://docs.oracle.com/javase/6/docs/technotes/guides/imageio/>`__ (JAI) framework for raster data loading and image encoding.
  38. We recommend use of libjpeg-turbo for those interested in increasing encoding performance.
  39. * - JAI Maximum Memory
  40. - The amount of memory available for the image processing tile cache, in this case 1.78 GB.
  41. * - JAI Memory Usage
  42. - Run-time amount of memory is used for the tile cache.
  43. Press :guilabel:`Free Memory` to clear available JAI memory by flushing the tile cache.
  44. * - JAI Memory Threshold
  45. - Refers to the percentage, e.g. 75, of cache memory to retain during tile removal.
  46. * - Number of JAI Tile Threads
  47. - The number of parallel threads used by the scheduler to handle tiles.
  48. * - JAI Tile Thread Priority
  49. - Schedules the global tile scheduler priority. The priority value defaults to 5, and must fall between 1 and 10.
  50. * - Thread Pool Core Pool Size
  51. - Number of threads that the ThreadPoolExecutor will create. This is underlying Java runtime functionality - see the Java documentation for ThreadPoolExecutor for more information.
  52. * - Thread Pool Max Pool Size
  53. - Maximum number of threads that the ThreadPoolExecutor will create. This is underlying Java runtime functionality - see the Java documentation for ThreadPoolExecutor for more information.
  54. * - Thread Pool Keep Alive Time
  55. - Timeout for threads to be terminated if they are idle and more than the core pool number exist. This is underlying Java runtime functionality - see the Java documentation for ThreadPoolExecutor for more information.
  56. * - Update Sequence
  57. - Refers to the number of times, e.g. 157, the server configuration has been modified.
  58. * - Resource cache
  59. - GeoServer maintains a resource cache with connections to stores, feature type definitions, external graphics, font definitions, and CRS definitions. This includes custom CRS definitions defined in data directory :file:`user_projections/epsg.properties`.
  60. Press :guilabel:`Clear` to empty the resource cache. This will force GeoServer to reconnect to stores, reconnect to databases, re-read icon and font information, and reload custom CRS definitions.
  61. * - Configuration and catalog
  62. - GeoServer keeps its configuration data in memory.
  63. Press :guilabel:`Reload` to force GeoServer to reload all of its configuration from disk. This is useful if for any reason that configuration information has become stale (e.g., an external utility has modified the configuration on disk).
  64. .. _config_serverstatus_module:
  65. Module Status
  66. -------------
  67. The :guilabel:`Modules` tab provides a summary of the status of all installed modules in the running server.
  68. .. figure:: img/module_status.png
  69. Module Status
  70. Field Descriptions
  71. ^^^^^^^^^^^^^^^^^^
  72. .. list-table::
  73. :widths: 20 80
  74. :header-rows: 1
  75. * - Module Name
  76. - Human readable name of the module, this links to a popup containing the full details and messages of the module
  77. * - Module ID
  78. - The internal package name of the module
  79. * - Available
  80. - Whether the module is available to GeoServer.
  81. A database extension requiring a third-party database driver to be installed would not be available for use.
  82. * - Enabled
  83. - Whether the module is enabled in the current GeoServer configuration
  84. * - Component
  85. - Functional component provided by the module.
  86. * - Version
  87. - The version of the installed module
  88. * - Message (popup)
  89. - Status message such as what Java rendering engine is in use, or the library path if the module/driver is unavailable
  90. .. figure:: img/module_popup.png
  91. :scale: 50%
  92. Module Status popup
  93. .. _config_serverstatus_system:
  94. System Status
  95. -------------
  96. The :guilabel:`System Status` tab provides extra information about the system environment GeoServer is running in. This provides an overview of the status of the GeoServer instance.
  97. .. figure:: img/system_status.png
  98. System status
  99. This information is also available via the REST API to troubleshoot remote systems. The library `OSHI <https://github.com/oshi/oshi/>`__ is used to retrieve system-level information without depending on native libraries or DLLs, relying solely on `Apache JNA <https://github.com/java-native-access/jna/>`_. Major operating systems (Linux, Windows and MacOS) are supported out of the box.
  100. Use the checkbox :guilabel:`Enable All Statistics` to start and stop the collecting and displaying system status information. Disabling is useful if GeoServer is generating a high CPU load due to system status collection.
  101. The available system information is:
  102. .. list-table::
  103. :widths: 30 20 50
  104. * - **Info**
  105. - **Example**
  106. - **Description**
  107. * - Operating system
  108. - Linux Mint 18
  109. - Name of the operating system and the used version
  110. * - Uptime
  111. - 08:34:50
  112. - Up time of the system
  113. * - System average load 1 minute
  114. - 0.90
  115. - System average load for the last minute
  116. * - System average load 5 minutes
  117. - 1.12
  118. - System average load for the last five minute
  119. * - System average load 15 minute
  120. - 0.68
  121. - System average load for the last fifteen minute
  122. * - Number of physical CPUs
  123. - 4
  124. - Number of physical CPUs / cores available
  125. * - Number of logical CPUs
  126. - 8
  127. - Number of logical CPUs / cores available
  128. * - Number of running process
  129. - 316
  130. - Total number of process running in the system
  131. * - Number of running threads
  132. - 1094
  133. - Total number of threads running in the system
  134. * - CPU load average
  135. - 4.12 %
  136. - Average load of the CPU in the last second
  137. * - CPU * load
  138. - 11.43 %
  139. - Load of a specific core in the last second
  140. * - Used physical memory
  141. - 31.58 %
  142. - Percentage of the system memory used
  143. * - Total physical memory
  144. - 31.4 GiB
  145. - System total memory
  146. * - Free physical memory
  147. - 21.4 GiB
  148. - System memory available for use
  149. * - Used swap memory
  150. - 0.00%
  151. - Percentage of swap memory used
  152. * - Total swap memory
  153. - 32.0 GiB
  154. - System total swap memory
  155. * - Free swap memory
  156. - 32.0 GiB
  157. - Free swap memory
  158. * - File system usage
  159. - 65.47 %
  160. - File system usage taking in account all partitions
  161. * - Partition * used space
  162. - 54.8 %
  163. - Percentage of space used in a specific partition
  164. * - Partition * total space
  165. - 338.9 GiB
  166. - Total space of a specific partition
  167. * - Partition * free space
  168. - 117.0 GiB
  169. - Free space on a specific partition
  170. * - Network interfaces send
  171. - 42.0 MiB
  172. - Data send through all the available network interfaces
  173. * - Network interfaces received
  174. - 700.4 MiB
  175. - Data received through all the available network interfaces
  176. * - Network interface * send
  177. - 25.0 MiB
  178. - Data send through a specific network interface
  179. * - Network interface * received
  180. - 250.4 MiB
  181. - Data received through a specific network interface
  182. * - CPU temperature
  183. - 52.00 ºC
  184. - CPU temperature
  185. * - CPU voltage
  186. - 1.5 V
  187. - CPU voltage
  188. * - GeoServer CPU usage
  189. - 3.5 %
  190. - Percentage of CPU used by GeoServer in the last second
  191. * - GeoServer threads
  192. - 49
  193. - Number of threads created by GeoServer
  194. * - GeoServer JVM memory usage
  195. - 5.83 %
  196. - Percentage of the JVM memory used by GeoServer
  197. If some information is not available the special term ``NOT AVAILABLE`` will appear. Values will be automatically converted to best human readable unit.
  198. .. _config_serverstatus_jvm:
  199. JVM Console
  200. -----------
  201. For information on the live Java Runtime Environment the :guilabel:`JVM Console` tab provides access to two useful troubleshooting tools.
  202. .. note::
  203. For more information on effective use see :ref:`troubleshooting`.
  204. Java Threads
  205. ^^^^^^^^^^^^
  206. Java Threads are how CPU use is shared between outstanding work GeoServer is performing (or waiting to perform).
  207. The "Thread Dump" is primarily used to troubleshoot performance issues and a non-responsive system.
  208. This can be used to identify when significant work is happening in the background, or if threads are stuck waiting on a resource.
  209. 1. Press :guilabel:`Thread Dump` for a summary of all active threads.
  210. .. figure:: img/thread_dump.png
  211. Thread Dump console output
  212. 2. Click :guilabel:`Download` link to download the JVM Console contents.
  213. Java Heap
  214. ^^^^^^^^^
  215. The Java Heap is a description of dynamic (or heap) memory use.
  216. The "Thread Dump" can be used to troubleshoot systems that are encountering a memory leak over time.
  217. 1. Press :guilabel:`Heap Dump` for an overview of memory use.
  218. .. figure:: img/heap_dump.png
  219. Heap Dump console output
  220. 2. Click :guilabel:`Download` link to download the JVM Console contents.