Hello <#C01HWUTP4HH|general> I am using signoz ...
# general
p
Hello #general I am using signoz standalone docker app, I can see section metrics like explained in the official website. Basically I want to see the host level metrics like cpu, memory etc. How to see that ?
a
Hi @Priya That will come under
Dashboards
tab. You would need to create a hostmetrics dashboard. Check out these docs: https://signoz.io/docs/tutorial/opentelemetry-binary-usage-in-virtual-machine/
p
Hi @Ashu fo the response so I have installed SigNoz on Docker Standalone and in above doc SIGNOZ_INGESTION_KEY is needed what is that how to get it ?
a
Can you check the docs under self-host section?
p
so I already have signoz up and running and its all all the containers up. I have instrumented my go application as well using this doc https://signoz.io/docs/instrumentation/golang/#send-traces-via-otel-collector-binary. enabled the tracer on endpoints as well so I am able to get the metrics for that endpoint. What I need is system level metrics as well where the application is running. I am sorry for these naive questions and Thank you attending these @Ashu
a
Is SigNoz and your application running on the same host?
p
yes
a
Can you try these steps: • Go to Dashboards • Click on
+New Dashboard
• Click on
Import json
• Paste JSON from this link in the window of
Import JSON
This should work. @Prashant Shahi just wanted to confirm once, if the application and signoz are on the same machine, we don't need to install otel-collector separately, right?
p
Thanks @Ashu but just to understand how exactly it will collect the host metrics via the json ?
Like for controllers i am starting a span using otel tracer and adding the attributes i need and thats coming under traces, dont i need to add cpde for host metrivs as well?
a
By defualt, when you install SigNoz, the hostmetrics receiver is enabled. You can read more about the receiver here: https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/receiver/hostmetricsreceiver/README.md SigNoz installation comes with an opentelemetry collector which has the hostmetrics receiver enabled. So the data is collected and stored in signoz database. The json just enables creating the dashboard automatically. You should see a dashboard like this once it works.
p
Thanks @Ashu it worked.
just one last question this dashboard is showing hostname as signoz_host where to change this name ?
Also is there any way to see what exactly data it is storing which is getting used in the dashboard .. just to verify if getting the stats from the host where the application is running. Also what if the application is running on different host and signoz is on different host. where is this metrics coming from how to ensure that ?..
By defualt, when you install SigNoz, the hostmetrics receiver is enabled then its collecting the metrics from the machine where signoz is running right ?
a
By defualt, when you install SigNoz, the hostmetrics receiver is enabled then its collecting the metrics from the machine where signoz is running right ?
Yes
Also what if the application is running on different host and signoz is on different host. where is this metrics coming from how to ensure that ?..
If the application is running on a different host, you would need to install otel-collector binary there and configure it to send data to the machine where SigNoz is installed.
just one last question this dashboard is showing hostname as signoz_host where to change this name ?
@Prashant Shahi would be able to help you on this.
Also is there any way to see what exactly data it is storing which is getting used in the dashboard .. just to verify if getting the stats from the host where the application is running.
@Srikanth Chekuri is there any way to do this? I am guessing this is a clickhouse table where the data is stored.
p
Thank you @Ashu @Prashant Shahi @Srikanth Chekuri if you xan help understanding above questions
p
@Priya In the hostmetrics dashboard shared above by @Ashu , hostname is a variable. More sources i.e. VM/K8s nodes you send data from, more hosts will be available in that option
p
Copy code
"variables": {
        "hostname": {
            "customValue": "",
            "description": "Hostname of the instance",
            "modificationUUID": "f8ed0d75-f0e7-4c82-978e-22bfe98a5c2b",
            "multiSelect": false,
            "name": "hostname",
            "queryValue": "SELECT DISTINCT(JSONExtractString(labels, 'host_name'))\nFROM signoz_metrics.time_series_v2\nWHERE not has(JSONExtractKeys(labels), 'k8s_node_name')",
            "selectedValue": "signoz-host",
            "showALLOption": false,
            "sort": "DISABLED",
            "textboxValue": "",
            "type": "QUERY"
        }
I believe its coming from above json that we imported in dashboard, can we change it to actual host name ? how to see the data stored in click house
Lets say my go application is running in a cluster of 5 machines and need to send the machine metrics to signoz ui.. now how to change the hostname so that dashboard shows the metrics for each of the hosts
@Ashu I have few more questions: 1. do we support sampling here ? (like collect traces for 1 out of 10 api calls) 2. process level metrics ( how much of cpu, memory etc is getting consumed by my application) 3. if my application is making db connection (redis connection) how to #db connections etc. Thank you for helping and answering all questions
p
> I believe its coming from above json that we imported in dashboard, can we change it to actual host name ? how to see the data stored in click house Did you import
hostmetrics-with-variable.json
? If yes, that
signoz-host
default value that is only shown once. But when hostname variable dropdown is clicked, you should see list of your VMs.
Lets say my go application is running in a cluster of 5 machines and need to send the machine metrics to signoz ui.. now how to change the hostname so that dashboard shows the metrics for each of the hosts
Also, in case of K8s nodes, you will need to import hostmetrics-k8s.json instead.