Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Text format parsing error in line 79 #48

Open
davidnewhall opened this issue Mar 13, 2021 · 3 comments
Open

Text format parsing error in line 79 #48

davidnewhall opened this issue Mar 13, 2021 · 3 comments

Comments

@davidnewhall
Copy link

davidnewhall commented Mar 13, 2021

Hello,

I'm trying to put OpenDJ metrics into CloudWatch. OpenDJ has a prometheus exporter, so this app felt like a good fit. I tried it and got the following message before the application exits.

$ prometheus-to-cloudwatch  -cloudwatch_publish_timeout 5 -prometheus_scrape_interval 60 -prometheus_scrape_url http://localhost:8080/metrics/prometheus -cloudwatch_namespace OpenDJ -cloudwatch_region us-east-2
2021/03/13 11:15:11 prometheus-to-cloudwatch: Starting prometheus-to-cloudwatch bridge
2021/03/13 11:16:11 reading text format failed: text format parsing error in line 79: second HELP line for metric name "ds_backend_entry_count"

Here's a snippet from http://localhost:8080/metrics/prometheus. The fourth line in this snippet is line 79 in the payload.

# HELP ds_backend_ttl_thread_count Number of active time-to-live threads
# TYPE ds_backend_ttl_thread_count gauge
ds_backend_ttl_thread_count{backend="userRoot",type="db",} 0.0
# HELP ds_backend_entry_count Number of subordinate entries of the base DN, including the base DN
# TYPE ds_backend_entry_count gauge
ds_backend_entry_count{backend="__config.ldif__",base_dn="cn=config",type="local",} 188.0
# HELP ds_backend_is_private Whether the base DNs of this backend should be considered public or private
# TYPE ds_backend_is_private gauge
ds_backend_is_private{backend="__config.ldif__",type="local",} 1.0
# HELP ds_backend_entry_count Number of subordinate entries of the base DN, including the base DN
# TYPE ds_backend_entry_count gauge
ds_backend_entry_count{backend="adminRoot",base_dn="cn=admin data",type="local",} 8.0
# HELP ds_backend_is_private Whether the base DNs of this backend should be considered public or private
# TYPE ds_backend_is_private gauge
ds_backend_is_private{backend="adminRoot",type="local",} 1.0
# HELP ds_backend_entry_count Number of subordinate entries of the base DN, including the base DN
# TYPE ds_backend_entry_count gauge
ds_backend_entry_count{backend="ads-truststore",base_dn="cn=ads-truststore",type="local",} 3.0
# HELP ds_backend_is_private Whether the base DNs of this backend should be considered public or private
# TYPE ds_backend_is_private gauge
ds_backend_is_private{backend="ads-truststore",type="local",} 1.0
# HELP ds_backend_entry_count Number of subordinate entries of the base DN, including the base DN
# TYPE ds_backend_entry_count gauge
ds_backend_entry_count{backend="backup",base_dn="cn=backups",type="local",} 1.0
# HELP ds_backend_is_private Whether the base DNs of this backend should be considered public or private
# TYPE ds_backend_is_private gauge
ds_backend_is_private{backend="backup",type="local",} 1.0
# HELP ds_backend_entry_count Number of subordinate entries of the base DN, including the base DN
# TYPE ds_backend_entry_count gauge
ds_backend_entry_count{backend="monitor",base_dn="cn=monitor",type="local",} 36.0
# HELP ds_backend_is_private Whether the base DNs of this backend should be considered public or private
# TYPE ds_backend_is_private gauge
ds_backend_is_private{backend="monitor",type="local",} 1.0
# HELP ds_backend_entry_count Number of subordinate entries of the base DN, including the base DN
# TYPE ds_backend_entry_count gauge
ds_backend_entry_count{backend="rootUser",base_dn="cn=Directory Manager",type="local",} 1.0
# HELP ds_backend_is_private Whether the base DNs of this backend should be considered public or private
# TYPE ds_backend_is_private gauge
ds_backend_is_private{backend="rootUser",type="local",} 1.0
# HELP ds_backend_entry_count Number of subordinate entries of the base DN, including the base DN
# TYPE ds_backend_entry_count gauge
ds_backend_entry_count{backend="schema",base_dn="cn=schema",type="local",} 1.0
# HELP ds_backend_is_private Whether the base DNs of this backend should be considered public or private
# TYPE ds_backend_is_private gauge
ds_backend_is_private{backend="schema",type="local",} 1.0
# HELP ds_backend_entry_count Number of subordinate entries of the base DN, including the base DN

This also appears around line 45:

# HELP ds_backend_entry_count Number of subordinate entries of the base DN, including the base DN
# TYPE ds_backend_entry_count gauge
ds_backend_entry_count{backend="userRoot",base_dn="dc=movies,dc=tv",type="db",} 0.0
@davidnewhall
Copy link
Author

Best I can tell from searching the web is that this is a bug in the OpenDJ output. That's a bummer since I have no control over that.

@rafaelmagu
Copy link

This appears to be an issue with missing newline endings on the output. I ran into the same thing on a different endpoint.

@Cenness
Copy link

Cenness commented Aug 21, 2024

@davidnewhall hey David, which version of opendj were you running? I'm tinkering with latest 4.7.0 and it doesn't have prometheus option in http endpoints

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants