-
Notifications
You must be signed in to change notification settings - Fork 1
GSIP 143
Plugins should be able to easily report basic status information: the status page would benefit from this information, and the same information could be reported via rest api.
- Morgan Thompson
- Kevin Smith
- Jody Garnett
This is for GeoServer 2.10. (or 2.9 if available)
- Under Discussion
- In Progress
- Completed
- Rejected
- Deferred
It's tricky/tedious to tell which extensions are installed and what versions are installed. As per GEOS-6068 we would like for extensions to be able to report their versions and status.
Proposed ExtensionStatus interface:
interface ExtensionStatus {
}
Environment based extensions can be reported by gs-main, which would register several ExtensionStatus beans in applicationContext.xml:
<bean id="extensionStatus" class="org.geoserver.web.ExtensionStatus">
<property name="id" value="server.admin.extensionStatus" />
<property name="nameKey" value="ExtensionStatus.name" />
<property name="componenetClass" value="org.geoserver.web.admin.ExtensionStatusPage" />
</bean>
Here is an example of reporting Java Rasterizer:
private String checkRenderer() {
try {
String renderer = sun.java2d.pipe.RenderingEngine.getInstance().getClass().getName();
return renderer;
} catch(Throwable e) {
return "Unknown";
}
}
This can also be used to report webapp.xml settings such as speed strategy.
An extension such as libjpegturbo that requires native libraries would use:
Main would register several ExtensionStatus beans in applicationContext.xml:
<extension>
</extension>
Many extensions, such as gs-oracle, just provide a maven dependency. To make use of ExtensionStatus an applicationContext.xml would be added configuring a prebuild DataStoreExtension bean.
<extension>
</extension>
The DataStoreExtension bean references the GeoTools DataStoreFactorySPI (to check the isAvaialble) method, and lists several additional classes to check using Class.forName (to verify oracle driver is available).
Open to suggestions, recommend adding an "extensions" tab to the existing status page, with extensions listed on the right alphabetically and a table on the right showing the details.
Similar to about/manifest we propose an about/extension endpoint.
<about>
`
Project Steering Committee:
- Alessio Fabiani:
- Andrea Aime:
- Ben Caradoc-Davies:
- Brad Hards:
- Christian Mueller:
- Ian Turton:
- Jody Garnett:
- Jukka Rahkonen:
- Kevin Smith:
- Simone Giannecchini:
- [Bug Report] https://osgeo-org.atlassian.net/browse/GEOS-6068
- [Email Discussion]
©2020 Open Source Geospatial Foundation