blob: a379357851e8b47df4b3acac05d523d16c9ec32f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
|
plugin_name: go.d.plugin
modules:
- meta:
id: collector-go.d.plugin-ipfs
plugin_name: go.d.plugin
module_name: ipfs
monitored_instance:
name: IPFS
link: "https://ipfs.tech/"
categories:
- data-collection.storage-mount-points-and-filesystems
icon_filename: "ipfs.svg"
related_resources:
integrations:
list: []
info_provided_to_referring_integrations:
description: ""
keywords:
- ipfs
- filesystem
most_popular: false
overview:
data_collection:
metrics_description: "This collector monitors IPFS daemon health and network activity."
method_description: |
It uses [RPC API](https://docs.ipfs.tech/reference/kubo/rpc/) to collect metrics.
Used endpoints:
- [/api/v0/stats/bw](https://docs.ipfs.tech/reference/kubo/rpc/#api-v0-stats-bw)
- [/api/v0/swarm/peers](https://docs.ipfs.tech/reference/kubo/rpc/#api-v0-swarm-peers)
- [/api/v0/stats/repo](https://docs.ipfs.tech/reference/kubo/rpc/#api-v0-stats-repo)
- [/api/v0/pin/ls](https://docs.ipfs.tech/reference/kubo/rpc/#api-v0-pin-ls)
supported_platforms:
include: []
exclude: []
multi_instance: true
additional_permissions:
description: ""
default_behavior:
auto_detection:
description: |
By default, it detects IPFS instances running on localhost that are listening on port 5001.
limits:
description: ""
performance_impact:
description: |
Calls to the following endpoints are disabled by default due to IPFS bugs:
- /api/v0/stats/repo ([#7528](https://github.com/ipfs/go-ipfs/issues/7528)).
- /api/v0/pin/ls ([#3874](https://github.com/ipfs/go-ipfs/issues/3874)).
**Disabled by default** due to potential high CPU usage. Consider enabling only if necessary.
setup:
prerequisites:
list: []
configuration:
file:
name: go.d/ipfs.conf
options:
description: |
The following options can be defined globally: update_every, autodetection_retry.
folding:
title: "Config options"
enabled: true
list:
- name: update_every
description: Data collection frequency.
default_value: 1
required: false
- name: autodetection_retry
description: Recheck interval in seconds. Zero means no recheck will be scheduled.
default_value: 0
required: false
- name: repoapi
description: Enables querying the [/api/v0/stats/repo](https://docs.ipfs.tech/reference/kubo/rpc/#api-v0-repo-stat) endpoint for repository statistics.
default_value: false
required: false
- name: pinapi
description: Enables querying the [/api/v0/pin/ls](https://docs.ipfs.tech/reference/kubo/rpc/#api-v0-pin-ls) endpoint to retrieve a list of all pinned objects.
default_value: false
required: false
- name: url
description: Server URL.
default_value: http://127.0.0.1:5001
required: true
- name: timeout
description: HTTP request timeout.
default_value: 1
required: false
- name: username
description: Username for basic HTTP authentication.
default_value: ""
required: false
- name: password
description: Password for basic HTTP authentication.
default_value: ""
required: false
- name: proxy_url
description: Proxy URL.
default_value: ""
required: false
- name: proxy_username
description: Username for proxy basic HTTP authentication.
default_value: ""
required: false
- name: proxy_password
description: Password for proxy basic HTTP authentication.
default_value: ""
required: false
- name: method
description: HTTP request method.
default_value: POST
required: false
- name: body
description: HTTP request body.
default_value: ""
required: false
- name: headers
description: HTTP request headers.
default_value: ""
required: false
- name: not_follow_redirects
description: Redirect handling policy. Controls whether the client follows redirects.
default_value: false
required: false
- name: tls_skip_verify
description: Server certificate chain and hostname validation policy. Controls whether the client performs this check.
default_value: false
required: false
- name: tls_ca
description: Certification authority that the client uses when verifying the server's certificates.
default_value: ""
required: false
- name: tls_cert
description: Client TLS certificate.
default_value: ""
required: false
- name: tls_key
description: Client TLS key.
default_value: ""
required: false
examples:
folding:
enabled: true
title: "Config"
list:
- name: Basic
description: A basic example configuration.
folding:
enabled: false
config: |
jobs:
- name: local
url: http://127.0.0.1:5001
- name: Multi-instance
description: |
> **Note**: When you define multiple jobs, their names must be unique.
Collecting metrics from local and remote instances.
config: |
jobs:
- name: local
url: http://127.0.0.1:5001
- name: remote
url: http://192.0.2.1:5001
troubleshooting:
problems:
list: []
alerts:
- name: ipfs_datastore_usage
link: https://github.com/netdata/netdata/blob/master/src/health/health.d/ipfs.conf
metric: ipfs.datastore_space_utilization
info: IPFS datastore utilization
metrics:
folding:
title: Metrics
enabled: false
description: ""
availability: []
scopes:
- name: global
description: "These metrics refer to the entire monitored application."
labels: []
metrics:
- name: ipfs.bandwidth
description: IPFS Bandwidth
unit: "bytes/s"
chart_type: area
dimensions:
- name: in
- name: out
- name: ipfs.peers
description: IPFS Peers
unit: "peers"
chart_type: line
dimensions:
- name: peers
- name: ipfs.datastore_space_utilization
description: IPFS Datastore Space Utilization
unit: "percent"
chart_type: area
dimensions:
- name: used
- name: ipfs.repo_size
description: IPFS Repo Size
unit: "bytes"
chart_type: line
dimensions:
- name: size
- name: ipfs.repo_objects
description: IPFS Repo Objects
unit: "objects"
chart_type: line
dimensions:
- name: objects
- name: ipfs.repo_pinned_objects
description: IPFS Repo Pinned Objects
unit: "objects"
chart_type: line
dimensions:
- name: pinned
- name: recursive_pins
|