ballerina-platform / ballerina-dev-website

Dev version of the ballerina.io website
Apache License 2.0
157 stars 171 forks source link

Improvements to the Observability documentation #8597

Open Dilhasha opened 8 months ago

Dilhasha commented 8 months ago

Description

A. Suggestions for https://ballerina.io/learn/observe-ballerina-programs/

  1. The below description can be structured better.

    image

    suggestion: Ballerina achieves full observability by exposing itself to various external systems through three methods: monitoring metrics such as request count and response time statistics, performing distributed tracing, and analyzing logs.

  2. Shall we add a table with what are the external tools we support for tracing, monitoring and logging?

  3. In Step 2 under Observe a Ballerina service, We can mention that Ballerina.toml can be updated if we are using a Ballerina project and in this case, we are using a single bal file, so we need to use the flag.

    image

B. Suggestions for https://ballerina.io/learn/observe-metrics/

  1. The following description can be re-organized IMO, do we need to mention about analytics?

    image

  2. Configure advanced metrics - let's mention we need to add it to Config.toml file

  3. Shall we mention that in this example we will use Prometheus for scraping the metrics and Grafana for visualization? Content gives the impression that we only support those.

  4. docker run -p 19090:9090 -v <path_to_prometheus.yml>:/etc/prometheus/prometheus.yml prom/prometheus Resulted in an error as follows. source /var/lib/docker/overlay2/436e68d98a7d660cf0e49f44ac50936a44dd2a79e9cd0631a67495ed1e064235/merged/etc/prometheus/prometheus.yml is not directory

Modified to the following it worked. docker run -p 19090:9090 -v prometheus.yml:/etc/prometheus/ prom/prometheus

I noticed the same sample in the Prometheus documentation too using the path upto filename. Shall we check whether it's an edge case?

  1. Do we need setting up the Grafana dashboard in this guide? IMO, that part is more suitable for a blog rather than the guide.

Steps to reproduce

The steps to be followed to reproduce the issue.

Affected version(s)

The versions that are affected by the issue.

Related website/documentation area

Add/Uncomment the relevant area label out of the following.

Related issue(s) (optional)

Any related issues such as sub tasks and issues reported in other repositories (e.g., component repositories), similar problems, etc.

Suggested label(s) (optional)

Optional comma-separated list of suggested labels. Non committers can’t assign labels to issues, and thereby, this will help issue creators who are not a committer to suggest possible labels.

Suggested assignee(s) (optional)

Optional comma-separated list of suggested team members who should attend the issue. Non committers can’t assign issues to assignees, and thereby, this will help issue creators who are not a committer to suggest possible assignees.

Dilhasha commented 8 months ago

B.4

This was due to an issue in the provided path. The path needs to be the isolated path. Even when you have the prometheus.yml in the current directory, it needs to be provided as ./prometheus.yml as follows.

docker run -p 19090:9090 -v ./prometheus.yml:/etc/prometheus/prometheus.yml prom/prometheus

The mapping should be from file to file OR directory to directory.

anupama-pathirage commented 5 months ago

@NipunaMadhushan Can we prioritize this to the update 9 related content plan?