Skip to content

Commit 92057ce

Browse files
Merge pull request #191 from sysdiglabs/staging
Staging
2 parents 8e962c4 + d3c5e3c commit 92057ce

23 files changed

+1641
-18
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
__pycache__

apps/images/memcached.svg

Lines changed: 1 addition & 0 deletions
Loading

apps/memcached.yaml

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
---
2+
apiVersion: v1
3+
kind: App
4+
name: "memcached"
5+
keywords:
6+
- Database
7+
- Available
8+
availableVersions:
9+
- '1.6'
10+
shortDescription: "Free & open source, high-performance, distributed memory object caching system"
11+
description: |
12+
Memcached is an in-memory key-value store for small chunks of arbitrary data (strings, objects) from results of database calls, API calls, or page rendering.
13+
icon: https://raw.githubusercontent.com/sysdiglabs/promcat-resources/master/apps/images/memcached.svg
14+
website: https://memcached.org/
15+
available: true

apps/redis.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ keywords:
66
- Database
77
- Available
88
availableVersions:
9-
- '2-6'
9+
- '2-8'
1010
shortDescription: "Redis is an open source in-memory database, cache and message broker."
1111
description: |
1212
Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker.

resources/memcached/ALERTS.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
# Alerts
2+
## [Memcached] Instance Down
3+
Instance is not reachable
4+
5+
6+
## [Memcached] Low UpTime
7+
Uptime of less than 1 hour in a Memcached instance
8+
9+
10+
## [Memcached] Connection Throttled
11+
Connection throttled because max number of requests per event process reached
12+
13+
14+
## [Memcached] Connections Close To The Limit 85%
15+
The mumber of connections is close to the limit
16+
17+
18+
## [Memcached] Connections Limit Reached
19+
Reached the number of maximum connections and caused a connection error
20+
21+

resources/memcached/INSTALL.md

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# Installing the exporter
2+
You will use the [Prometheus Memcached Metrics Exporter](https://github.com/prometheus/memcached_exporter).
3+
4+
The `memcached-exporter-deploy.yaml` file provides a deployment with the exporter.
5+
6+
To deploy it, download the file and run:
7+
```
8+
kubectl apply -f memcached-exporter-deploy.yaml
9+
```
10+
> Make sure to edit the argumment `memcached.address` with the proper address name of your memcached instance
11+
12+
# Sysdig Agent configuration
13+
> Requires Sysdig Agent >= v11.3
14+
15+
In the Redis exporter Deployment use the Sysdig annotations to configure the port of the exporter as the scraping port. See the example given in the `memcached-exporter-deploy.yaml` file.
16+
17+
Additionally, you can use the labels to add the namespace, workload type, and name of the database the exporter will take data from.
18+
This way, you can view the metrics associated directly with the database pods and the exporter in Sysdig Monitor.
19+
20+
```yaml
21+
spec:
22+
template:
23+
metadata:
24+
annotations:
25+
promcat.sysdig.com/integration_type: memcached
26+
promcat.sysdig.com/port: "9150"
27+
# Add here the namespace, workload type (deployment, statefulset, replicaset, daemonset)
28+
# and workload name of the Memcached instance that the exporter will take data from
29+
promcat.sysdig.com/target_ns: default
30+
promcat.sysdig.com/target_workload_type: deployment
31+
promcat.sysdig.com/target_workload_name: memcached
32+
```
33+
34+
After configuring the Sysdig annotations, download the sample configuration file and apply it by:
35+
```bash
36+
kubectl apply -f sysdig-agent-config.yaml
37+
```

resources/memcached/README.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
# Memcached
2+
Memcached is an open source in-memory database and cache.
3+
4+
Memcached has an integrated statistics service that provide internal metrics.
5+
To extract these metrics in Prometheus format, use the [Prometheus Memcached Metrics Exporter](https://github.com/prometheus/memcached_exporter).
6+
7+
# Metrics
8+
Memcached generates different topics:
9+
10+
11+
# Number of time series generated
12+
Memcached generates around 100 metrics for each Memcached instance.
13+
14+
For further information, see the [Memcached documentation](https://github.com/memcached/memcached/wiki).
15+
16+
# Attributions
17+
Configuration files, alerts, and dashboards are maintained by [Sysdig team](https://sysdig.com/).
18+
19+
Using [Prometheus Memcached Metrics Exporter](https://github.com/prometheus/memcached_exporter) with Apache 2 License.

resources/memcached/alerts.yaml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
apiVersion: v1
2+
kind: Alert
3+
app: memcached
4+
version: 1.0.0
5+
appVersion:
6+
- '1.6'
7+
descriptionFile: ALERTS.md
8+
configurations:
9+
- kind: Prometheus
10+
file: include/memcached-prometheus-alerts.yaml
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
apiVersion: v1
2+
kind: Dashboard
3+
app: memcached
4+
version: 1.0.0
5+
appVersion:
6+
- '1.6'
7+
configurations:
8+
- name: Memcached
9+
kind: Sysdig
10+
image: memcached/images/memcached-sysdig.png
11+
description: |
12+
This dashboard offers information on:
13+
* Connections
14+
* Hit and miss rate
15+
* Evicts and reclaims
16+
* Memory usage
17+
* Commands
18+
file: include/dashboard-Sysdig-Memcached.json
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
apiVersion: v1
2+
kind: Description
3+
app: memcached
4+
version: 1.0.0
5+
appVersion:
6+
- '1.6'
7+
descriptionFile: README.md

0 commit comments

Comments
 (0)