7.3.x Simple JSON Monitoring via Zabbix: HOW?

92 views
Skip to first unread message

Drew Northup

unread,
Feb 26, 2026, 12:48:16 PM (2 days ago) Feb 26
to CAS Community
Here we use Zabbix as our monitoring platform. Is there some reasonable way we can just give it a JSON output to eat, or do we need to justify paying for something because our existing solution is no longer supported?

Ray Bon

unread,
Feb 26, 2026, 4:04:17 PM (2 days ago) Feb 26
to cas-...@apereo.org
Drew,


Ray

From: cas-...@apereo.org <cas-...@apereo.org> on behalf of Drew Northup <drew.n...@maine.edu>
Sent: February 26, 2026 09:42
To: CAS Community <cas-...@apereo.org>
Subject: [cas-user] 7.3.x Simple JSON Monitoring via Zabbix: HOW?
 
Here we use Zabbix as our monitoring platform. Is there some reasonable way we can just give it a JSON output to eat, or do we need to justify paying for something because our existing solution is no longer supported?

--
- Website: https://apereo.github.io/cas
- List Guidelines: https://goo.gl/1VRrw7
- Contributions: https://goo.gl/mh7qDG
---
You received this message because you are subscribed to the Google Groups "CAS Community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cas-user+u...@apereo.org.
To view this discussion visit https://groups.google.com/a/apereo.org/d/msgid/cas-user/00f4ea48-b801-4294-9ef7-275a2eb585can%40apereo.org.

Frédéric Dussurget

unread,
Feb 27, 2026, 11:28:41 AM (yesterday) Feb 27
to CAS Community, Ray Bon
Hi Ray,
how do you make palantir work ? I can access /cas/palantir and see menus and tabs but no data at all ...
I have this issue when trying to reload in the Applications tab : 
"Unable to contact the CAS server. Are you sure the server is reachable?"
I have this dep in my build.gradle :     implementation "org.apereo.cas:cas-server-support-palantir"
(If there's any link with that : Account manager is turned on in cas properties and works)
Do we have something to configure somewhere ?
Regards,

Below In the logs I have these info when accessing /cas/palantir (after spring authentication) (I do not use neither saml neither oidc)

 [2026-02-27 17:04:36] [info] #033[1;31m2026-02-27 17:04:36,449 ERROR [org.apereo.cas.util.serialization.BaseJacksonSerializer] - <Cannot read/parse [{"@class":"org.apereo.cas.services.OidcRegisteredService","clientId":"...","clientSecret":"...","serviceId":"^https://.*",...] to deserialize into type [interface org.apereo.cas.services.RegisteredService]. This may be caused in the absence of a configuration/support module that knows how to interpret the fragment, specially if the fragment describes a CAS registered service definition. Internal parsing error is [Could not resolve type id 'org.apereo.cas.services.OidcRegisteredService' as a subtype of `org.apereo.cas.services.RegisteredService`: no such class found
[2026-02-27 17:04:36] [info]  at [Source: REDACTED (`StreamReadFeature.INCLUDE_SOURCE_IN_LOCATION` disabled); line: 1, column: 11]]>#033[m
[2026-02-27 17:04:36] [info] #033[1;31m2026-02-27 17:04:36,450 ERROR [org.apereo.cas.util.serialization.BaseJacksonSerializer] - <Cannot read/parse [{"@class":"org.apereo.cas.services.OidcRegisteredService","clientId":"...","clientSecret":"...","serviceId":"^https://.*",...] to deserialize into type [interface org.apereo.cas.services.RegisteredService]. This may be caused in the absence of a configuration/support module that knows how to interpret the fragment, specially if the fragment describes a CAS registered service definition. Internal parsing error is [Could not resolve type id 'org.apereo.cas.services.OidcRegisteredService' as a subtype of `org.apereo.cas.services.RegisteredService`: no such class found
[2026-02-27 17:04:36] [info]  at [Source: REDACTED (`StreamReadFeature.INCLUDE_SOURCE_IN_LOCATION` disabled); line: 1, column: 11]]>#033[m
[2026-02-27 17:04:36] [info] #033[1;31m2026-02-27 17:04:36,452 ERROR [org.apereo.cas.util.serialization.BaseJacksonSerializer] - <Cannot read/parse [{"@class":"org.apereo.cas.support.saml.services.SamlRegisteredService","serviceId":"^http://localhost:9443/simplesaml.*","...] to deserialize into type [interface org.apereo.cas.services.RegisteredService]. This may be caused in the absence of a configuration/support module that knows how to interpret the fragment, specially if the fragment describes a CAS registered service definition. Internal parsing error is [Could not resolve type id 'org.apereo.cas.support.saml.services.SamlRegisteredService' as a subtype of `org.apereo.cas.services.RegisteredService`: no such class found
[2026-02-27 17:04:36] [info]  at [Source: REDACTED (`StreamReadFeature.INCLUDE_SOURCE_IN_LOCATION` disabled); line: 1, column: 11]]>#033[m
[2026-02-27 17:04:36] [info] #033[1;31m2026-02-27 17:04:36,453 ERROR [org.apereo.cas.util.serialization.BaseJacksonSerializer] - <Cannot read/parse [{"@class":"org.apereo.cas.support.saml.services.SamlRegisteredService","serviceId":".+","name":"SAML2","id":2,"description...] to deserialize into type [interface org.apereo.cas.services.RegisteredService]. This may be caused in the absence of a configuration/support module that knows how to interpret the fragment, specially if the fragment describes a CAS registered service definition. Internal parsing error is [Could not resolve type id 'org.apereo.cas.support.saml.services.SamlRegisteredService' as a subtype of `org.apereo.cas.services.RegisteredService`: no such class found
[2026-02-27 17:04:36] [info]  at [Source: REDACTED (`StreamReadFeature.INCLUDE_SOURCE_IN_LOCATION` disabled); line: 1, column: 11]]>#033[m

Drew Northup

unread,
Feb 27, 2026, 11:28:41 AM (yesterday) Feb 27
to cas-...@apereo.org
Thank Ray,
What do I need to know about configuring them that is missing from the documentation then? .....as getting 401s no matter what I do means that either (1) The documentation is incorrect, incomplete, or misleading; or (2) It doesn't actually work. I'm leaning toward (1), and to be frank this is likely the last generation of CAS the University of Maine System will ever implement because keeping it alive and fully up-to-date seems to require an increasing number of FTE over time.

The reason I'm asking about this is because:
(1) the documentation implies that configuring "Storage" for the Metrics is non-optional,
(2) Micrometer doesn't seem to have a pure simple JSON output (or if they do it isn't clearly mentioned in their documentation, unlike dropwizard metrics), and
(3) adding «implementation "org.apereo.cas:cas-server-core-monitor"» (which is in the Monitors section of the docs) to the Gradle build causes me to have to exclude things like datadog contrary to the documentation indicating the "simple" storage for Metrics (a different section of the documentation with a different Gradle configuration).is the default.

(3) is especially concerning, as it leads me to wonder "what depends on what" that isn't clearly documented and if there's more than meets the eye that is missing from the documentation.

Additionally, it seems that the authentication settings for the monitors and management front-end depend on a completely different authentication engine than the rest of CAS itself, as "AUTHENTICATED" doesn't seem to mean Authenticated.


You received this message because you are subscribed to a topic in the Google Groups "CAS Community" group.
To unsubscribe from this topic, visit https://groups.google.com/a/apereo.org/d/topic/cas-user/aCmB6vSHHdo/unsubscribe.
To unsubscribe from this group and all its topics, send an email to cas-user+u...@apereo.org.
To view this discussion visit https://groups.google.com/a/apereo.org/d/msgid/cas-user/YQBP288MB0081672C7EE5C387571CC42DCE72A%40YQBP288MB0081.CANP288.PROD.OUTLOOK.COM.


--
---------------------------+--------------------------------
Drew Northup               | 
University of Maine System |          drew.n...@Maine.edu
Computing Center           |
Orono, ME 04469            |

Ray Bon

unread,
Feb 27, 2026, 11:37:25 AM (yesterday) Feb 27
to CAS Community
Frédéric,

To see configuration, select  one of the actuators, then click on the button that looks like a book on a green background, then the configuration tab.
The simplest setup is to enable all actuators (hopefully  you have a dev or personal environment):
Management: 
    endpoints:
        access:
          default: UNRESTRICTED   
    web:
          exposure:
            include: "*"

There are a lot of actuators (some from cas, some from spring). I am not sure which ones are required. On our servers that handle authn, all actuators, except for health, are turned off; a separate server, network accessible to only the ops team, handles Palantir.
This blog may also help https://fawnoos.com/blog/

Ray

From: Frédéric Dussurget <dussu...@gmail.com>
Sent: February 27, 2026 08:09
To: CAS Community <cas-...@apereo.org>
Cc: Ray Bon <rb...@uvic.ca>
Subject: Re: [cas-user] 7.3.x Simple JSON Monitoring via Zabbix: HOW?
 

Ray Bon

unread,
Feb 27, 2026, 2:46:22 PM (yesterday) Feb 27
to cas-...@apereo.org
Drew,

The actuators are governed by spring authn. When not set, spring will create a random password. https://apereo.github.io/cas/7.3.x/monitoring/Configuring-SpringBootAdmin.html

We use a separate monitoring system that is used across all/most servers in out data centre. None of it relies on pulling data out of cas directly.

Ray

From: cas-...@apereo.org <cas-...@apereo.org> on behalf of Drew Northup <drew.n...@maine.edu>
Sent: February 27, 2026 07:17
To: cas-...@apereo.org <cas-...@apereo.org>
Subject: Re: [cas-user] 7.3.x Simple JSON Monitoring via Zabbix: HOW?
 
Reply all
Reply to author
Forward
0 new messages