bundles/matrix-{media-repo,synapse}: catch all them metrics into influxdb
kunsi/bundlewrap/pipeline/head There was a failure building this commit Details

This commit is contained in:
Franzi 2021-11-09 18:26:52 +01:00
parent e58b447eb7
commit e10ac0e57f
Signed by: kunsi
GPG Key ID: 12E3D2136B818350
6 changed files with 51 additions and 9 deletions

View File

@ -33,6 +33,7 @@ Rule of thumb: keep ports below 10000 free for stuff that reserves ports.
| 20080 | matrix-synapse | client, federation |
| 20081 | matrix-synapse | prometheus metrics |
| 20090 | matrix-media-repo | media_repo |
| 20090 | matrix-media-repo | prometheus metrics |
| 21000 | pleroma | pleroma |
| 21010 | grafana | grafana |
| 22000 | gitea | gitea |

View File

@ -73,25 +73,24 @@ defaults = {
},
}
if node.has_bundle('telegraf'):
defaults['telegraf'] = {
'input_plugins': {
'builtin': {
'http': [{
'http': {
'hedgedoc_status': {
'urls': [
'http://127.0.0.1:3000/status'
],
'data_format': 'json',
'name_override': 'hedgedoc_status',
}],
'prometheus': [{
},
},
'prometheus': {
'hedgedoc': {
'urls': [
'http://127.0.0.1:3000/metrics'
],
'name_override': 'hedgedoc_metrics',
'metric_version': 2,
}],
},
},
},
}

View File

@ -157,7 +157,7 @@ timeouts:
clientServerTimeoutSeconds: 30
metrics:
enabled: false
enabled: true
bindAddress: "127.0.0.1"
port: 20091

View File

@ -77,6 +77,20 @@ if node.os == 'debian' and node.os_version[0] <= 10:
},
}
if node.has_bundle('telegraf'):
defaults['telegraf'] = {
'input_plugins': {
'prometheus': {
'matrix_media_repo': {
'urls': [
'http://127.0.0.1:20091/metrics'
],
'metric_version': 2,
},
},
},
}
@metadata_reactor.provides(
'matrix-media-repo/workers',

View File

@ -65,6 +65,20 @@ defaults = {
},
}
if node.has_bundle('telegraf'):
defaults['telegraf'] = {
'input_plugins': {
'prometheus': {
'matrix_synapse': {
'urls': [
'http://[::1]:20081/_synapse/metrics'
],
'metric_version': 2,
},
},
},
}
@metadata_reactor.provides(
'nginx/vhosts',

View File

@ -77,6 +77,20 @@ for name, config in sorted(node.metadata.get('telegraf/input_plugins/tail', {}).
telegraf_config['inputs']['tail'].append(config)
for name, config in sorted(node.metadata.get('telegraf/input_plugins/http', {}).items()):
if 'http' not in telegraf_config['inputs']:
telegraf_config['inputs']['http'] = []
config['name_override'] = name
telegraf_config['inputs']['http'].append(config)
for name, config in sorted(node.metadata.get('telegraf/input_plugins/prometheus', {}).items()):
if 'prometheus' not in telegraf_config['inputs']:
telegraf_config['inputs']['prometheus'] = []
config['name_override'] = f'{name}_metrics'
telegraf_config['inputs']['prometheus'].append(config)
files = {
'/etc/telegraf/telegraf.conf': {
'content_type': 'mako',