Metrics and alerts configuration in open search - opensearch

I am using plugins to export data from opentelementry to open search.
I am using below configurations
metrics-pipeline:
source:
otel_metrics_source:
ssl: false
processor:
- otel_metrics_raw_processor:
sink:
- opensearch:
hosts: ["https://<domain-name>:443"]
insecure: true
username: "username"
password: "password
index: metrics-otel-v1-%{yyyy.MM.dd}
With the above configuration I am able to see all the traces along with trace error rate and traces over time details but
As per the documentation, metrics feature is included recently so I am not able to find proper documentation.
I am trying to configure metrics in open search, I can see only some options under visualization like sum, count etc so please provide any inputs on how to configure proper metrics in opensearch
Also Data prepper has created an index "otel-v1-apm-span" by default without any time field so when I am trying to configure alerts or detectors, it is asking for time field in the index.
Please let me know if I am missing anything.
Any inputs will be appreciated.

Related

bitnami.keycloak helm chart - how to turn of theme caching

I'm trying to get the Bitnami Keycloak instance to start in dev-mode and/or with the theme cache turned off. I've tried
extraEnvVars:
-name: KEYCLOAK-PRODUCTION
value: false
and also
cache:
enabled: false
I've tried using extraStartupArgs setting the spi values as suggested in the Keycloak docs. https://www.keycloak.org/docs/latest/server_development/#creating-a-theme
Nothing is working. I'm currently having to update the CSS file name with a version number and also updating the theme.properties file with that version number too and I'd like Keycloak to just reload everything with each page load.
Hope someone can help out.
Scott

Krakend grafana dashoboard shows no data

I am using krakend-ce 1.4 and influx 1.X
I have configured grafana dashboard and hoping to see dashboard panels for all the layers.
There are 4 layers as per dashboard.
Router
Proxy
Backend
System
I see router panels data is getting charted as expected. But for other panels I see empty charts. "No Data to show"
my configuration for krakend-metrics and influx modules is as follows:
"github_com/devopsfaith/krakend-metrics": {
"collection_time": "30s",
"proxy_disabled": false,
"router_disabled": false,
"backend_disabled": false,
"endpoint_disabled": false,
"listen_address": "127.0.0.1:8090"
},
"github_com/letgoapp/krakend-influx":{
"address":"http://influxdb-service:80",
"ttl":"25s",
"buffer_size":0,
"db": "krakend",
"username": "admin",
"password": "adminadmin"
}
I also added opencensus as follows:
"github_com/devopsfaith/krakend-opencensus": {
"sample_rate": 100,
"reporting_period": 1,
"enabled_layers": {
"backend": true,
"router": true,
"pipe": true
},
"influxdb": {
"address": "http://influxdb-service:80",
"db": "krakend",
"timeout": "1s",
"username": "admin",
"password": "adminadmin"
}
}
I thought may be my data is not ending up in influxDB, so I went in and checked what does it have. show measurements give me following output, and all measurements does have some data.
I am using grafana dashboard ID 5722. which is specified in docs.
how can I change my setup so that panels for proxy, backend and system shows charts?
__________________________
UPDATE
I upgrade krakend to version 2.1
Removed opencensus metrics exporter
Now using dashboard 15029 per krakend 2.1.2 documentation.
I still do not see other layer charts getting populated.
PS: I have checked what metrics are getting exposed on http://krakend-host:8090/__stats I see layer.backend and layer.pipe metrics.
__________________________
UPDATE 2
I was also checking for other available dashboards which can work. I stumbled upon this one https://github.com/letgoapp/krakend-influx/blob/master/examples/grafana-dashboard.json
I see 2 more panels showing up. but not all of them.
kale
If you want to use the Grafana dashboards published by KrakenD they work with only with the native InfluxDB exporter (github_com/letgoapp/krakend-influx) and NOT with the OpenCensus one.
You should delete the github_com/devopsfaith/krakend-opencensus configuration block, otherwise, you have KrakenD reporting the same metrics in different measurements twice.
The influxdb port is usually http://influxdb-service:8086, but you show port 80 in the settings, make sure these are not old data. If you have changed the port it's fine.
Another thing you have to check is if the InfluxDB client is started during KrakenD startup (there is a line in the logs telling about it), old versions had a random bug that prevented the metrics from being sent.
Finally, the maintained dashboard is now 15029 for the InfluxDB v1. Try to use that one.
There have been several improvements in metrics and in KrakenD in general system, I would avoid staying with the old 1.4 being the transition as simple as it is (but this is another topic)
Hope this helps
After hours of debugging, I finally found the solution. Key here to note is If your configurations are correct, you should see data showing up in influxDB. First, make sure that you see data in influxDB. In my case, this was correct.
Like I mentioned in the second update to the question, I see some more panels getting populated when I used the dashboard from https://github.com/letgoapp/krakend-influx/blob/master/examples/grafana-dashboard.json
This was a huge lead. Later I went on to compare the specific JSON blocks within the working dashboard and the one which was missing some charts. I realized all of those panels had "datasource": null. And the ones which were working had the "datasource": "InfluxDB",
I updated the JSON definition of dashboard and viola !! All the panels started showing the charts.
PS: If you see any datasource as null, or which does not correspond to your influx DB datasource, you should update it to use influx db data source which is defined in the datasources section on the admin panel.

How can I set compatibility mode for Amazon OpenSearch using CloudFormation?

Since AWS has replaced ElasticSearch with OpenSearch, some clients have issues connecting to the OpenSearch Service.
To avoid that, we can enable compatibility mode during the cluster creation.
Certain Elasticsearch OSS clients, such as Logstash, check the cluster
version before connecting. Compatibility mode sets OpenSearch to
report its version as 7.10 so that these clients continue to work with
the service.
I'm trying to use CloudFormation to create a cluster using AWS::OpenSearchService::Domain instead of AWS::Elasticsearch::Domain but I can't see a way to enable compatibility mode.
To do this in terraform use the config
resource "aws_elasticsearch_domain" "search" {
domain_name = "search"
advanced_options = {
"override_main_response_version" = "true"
}
}
docs can be found can be found here https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/elasticsearch_domain
The AWS::OpenSearchService::Domain CloudFormation resource has a property called AdvancedOptions.
As per documentation, you should pass override_main_response_version to the advanced options to enable compatibility mode.
Example:
Resources:
OpenSearchServiceDomain:
Type: AWS::OpenSearchService::Domain
Properties:
DomainName: 'test'
EngineVersion: 'OpenSearch_1.0'
AdvancedOptions:
override_main_response_version: true
You can add this in the advanced section tab AdvancedOptions.
Example:
Resources:
OpenSearchServiceDomain:
Type: AWS::OpenSearchService::Domain
Properties:
AdvancedOptions:
override_main_response_version: true

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.

Issue with publishing API Product to Bluemix

I am using API Connect: v5.0.5.0 (apiconnect: v2.4.11) Developer toolkit on Windows 10. I am able to publish my loopback application to Bluemix successfully from the Developer Toolkit. However, while trying to publish/stage corresponding API Product to my Bluemix API Connect instance from APIC Developer toolkit is getting the following exception.
I would like to know where to find additional message (as indicated in the error )and any tips or suggestion to resolve the issue.
First off, if you're having problems publishing I'd suggest running apic validate against your product file first to see if there are any validation issues.
I grabbed your product/api files from the developer.ibm.com question and did some testing. I found that your path /containers/{container}/download/{file} has two parameters defined as
parameters:
- name: container
in: path
required: false
type: string
- name: file
in: path
required: false
type: string
By no means am I an expert in this space, but I found if I change required: false to required: true validation was successful. Give that a try.
Arindam,
I have seen this issue before. This solved my issue. Scroll down to answer by Peter Szeto.
http://developer.ibm.com/answers/questions/268185/api-designer-cant-publish-loopback-project/?smartspace=api