How to configure Jaeger data source in Grafana properly? - grafana

I would like to configure Jaeger data source in Grafana. I have Loki, Jaeger, Grafana installed in Kubernetes cluster. All services are up and running. Then, I navigate to Grafana to set up a new data source for Jaeger. Specify Jaeger url (http://jaeger-tracing-query.monitoring.svc.cluster.local:16687), click on [Save & test] button and the 'Data source connected, but no services received. Verify that Jaeger is configured properly.' error message is shown. If I navigate to Jaeger UI, I can clearly see 2 services.
Could you please guide me on what is probably missing in the configuration?

16687 is admin port. Use port 80 to configure the data source in grafana.
it should be like jaeger-tracing-query.monitoring.svc.cluster.local:80

I was scratching my head over this issue.
All the documents say you need to connet to {pod}.{namespace}:{port}
I noticed if you go to the Jaeger UI it's querying for the services on this endpoint
http://localhost:16686/jaeger/api/services
So I went back to Grafana and set the URL to http://jaeger-query:16686/jaeger

Related

Grafana on ECS cluster return not allowed origin

Created ECS cluster let's call it tools.
tools cluster have 2 services:
sso-proxy
grafana - opensource
Going through sso-proxy to get grafana.
when trying to enter credentials to grafana i got the following error:
When incognito mode the login working for the first time.
This is the ECS logs:
Please someone can help.
Grafana must receive proper Host header in the request header. I guess your "sso-proxy" doesn't do that. You didn't provide reproducible example (why not, when you want to help), so it is only a guess.
Lazy and insecure workaround will be Grafana downgrade to version 8.3.4-, where CSRF fix for CVE-2022-21703 is not included.

Grafana Geo Map Dashboard - Geo IP Configuration

I have installed Grafana in my AKS cluster and now I want to create a Dashboard which shows the Geo location of the users connecting. So I found the below dashboard in Grafana website.
https://grafana.com/grafana/dashboards/12559
But some of the panels shows "No Data" in this dashboard. For instance, Requests per Country doesn't show any data. The query used by this panel is
sum by (geoip_country_code) (count_over_time({$label_name=~"$label_value", job=~"$job", instance=~"$instance"} | json | geoip_country_code != "" | __error__="" [$__interval]))
I searched regarding this, and as far as I know, we need "Geo Map" plugin installed in our Grafana Dashboard. But I see the plugin installed in Grafana.
So in this case, do I need to install any kind of agent or something to gather metrics regarding location? I also see in the grafana dashboard saying below.
I can't understand where I should put this configuration. Is these parameters should be placed in the Config Map or else the NGINX Ingress Controller Annotation section?

How to make the Response Caching worked in the wso2am-3.1.0? (am-pattern-2)

Description:
I've already add the
[message_builder]
json = "org.apache.synapse.commons.json.JsonStreamBuilder"
in the deployment.toml of the Gateway config chart.
But I do not understand the meaning of "maintain the standard builders on the API Dev portal node. "It's from https://apim.docs.wso2.com/en/latest/learn/api-gateway/response-caching/#response-caching
What does it mean and how to make this work?
Suggested Labels:
Response Caching
**Affected Product Version: wso2am-3.1.0
**OS, DB, other environment details and versions: kubernetes centOS mysql
APIM has Default message builders and message formatters.
You need to configure them on devportal node like this.

Grafana custom data source

help me with this fairly new to Grafana
Things accomplished so far:
1. Managed to get a JSON output from CSV (basically looking to plot transaction availability based on success/ fail criteria)
2. Wanted a Prometheus source imported
Can you help me how I proceed in either building a Graphite dashboard (or) Prometheus? Much appreciated. thanks
In order to use Prometheus datasource, you need to follow below steps
Start Prometheus server. By default, it listens at 9090 port.
login to Grafana console, go to option - Add datasource
select Prometheus as type of datasource from the drop down.
Insert the Prometheus URL (You got this in step 1)
Access should be "direct" if you aren't using any proxy to establish connection.
Hit save & test.

Grafana datasources connection using proxy

How Grafana can be configured to connect to the data sources (for example Graphite) via proxy?
Grafana -> Proxy -> Graphite
When adding Graphite data source in Grafana there is an option to choose access with proxy (Proxy=Grafana backend will proxy the request) but there is no place in the configureation.ini to specify the IP of the proxy to be used for backend data transfer.
In the ini file there is location to specify "authentication proxy" for accessing the Grafana UI but can this be used for proxy between Grafana and Graphite?
[auth.proxy]
enabled = true
header_name = X-WEBAUTH-USER
header_property = username
auto_sign_up = true
Where the proxy details between Grafana and its data sources can be configured?
Thanks for the reply of AussieDan
I have added the environment variables :
set HTTP_PROXY="http://proxy_IP:proxy_port"
set HTTPS_PROXY="https://proxy_IP:proxy_port"
And started the Grafana in same command prompt .
When trying to save the Graphite data source in Grafana UI, it says in the log "proxy error: Service Unavailable". Telnet to the proxy on same port works fine so the port is open.
` 2016/12/13 15:55:05 http: proxy error: Service Unavailable ←[31mEROR←[0m[12-13|15:55:05] Request Completed ←[31mlogger←[0m=context ←[31muserId←[0m=1 ←[31morgId←[0m=1 ←[31muname←[0m=admin ←[31mmethod←[0m=GET ←[31mpath←[0m=/metrics/find ←[31mstatus←[0m=500 ←[31mremote_addr←[0m=IP ←[31mtime_ns←[0m=15ns ←[31msize←[0m=0 `
Is there anything additional that needs to be configured for proxy communication?
Grafana defines a new user named grafana with its own environment, as stated here under Start the server (init.d service) and Environment file sections.
The environment file on ubuntu is located in /etc/default/grafana-server
Paste your proxy environment variable definitions in this file as so:
https_proxy=http://<ip>:<port>/
http_proxy=http://<ip>:<port>/
no_proxy=localhost,127.0.0.0/8,::1,<other ip/networks to ignore>
Since the grafana backend is written in go, you can use the HTTP_PROXY="http://proxyIp:proxyPort" environment variable to specify a proxy for it to use for all outgoing requests.