26 Commits

Author SHA1 Message Date
Sergey Kanzhelev
0ce333bbc5 enabled and fixed the errcheck linter rule 2025-09-10 21:45:46 +00:00
Sergey Kanzhelev
75bf501888 format imports 2025-08-13 16:56:32 +00:00
Nick Parker
8d237a6c7c feat(k8sExporter): Options to allow disabling Events or Node Conditions
Both outputs are currently hardcoded to being enabled, this allows disabling one or the other. Defaults to both enabled to retain current behavior.

Larger clusters can save some etcd I/O by skipping one of these outputs if they aren't being consumed. In our case we aren't consuming the Events so writing them just creates more churn.
2025-02-04 14:53:19 +13:00
googs1025
0d756b78fc chore: qps flag: use float32 instead of float64 2024-11-06 13:09:20 +08:00
googs1025
17dcc94418 feature: add QPS Burst flags 2024-10-27 21:58:45 +08:00
Jeremy Edwards
a7f78c5668 Enable NPD to run as a Windows Service. 2021-04-02 23:03:14 -07:00
Andrew DeMaria
7fd465e195 Add namespace option for events 2020-03-05 19:04:31 -07:00
wojtekt
43728fb0fc Decrease default frequency of forced heartbeats to 5m 2019-10-24 10:39:01 +02:00
Matt Matejczyk
2e9da8569d Make heartbeatPeriod const into a flag. 2019-09-26 09:59:03 +02:00
Xuewei Zhang
0f0e5eff0f Adding stackdriver exporter 2019-09-12 18:30:00 -07:00
Yang Guo
ddb1d76178 Support waiting for kube-apiserver to be ready with timout during NPD startup 2019-07-09 10:24:25 -07:00
Lantao Liu
f2d17ee77b Do not import plugins unnecessarily.
Signed-off-by: Lantao Liu <lantaol@google.com>
2019-06-13 17:57:53 -07:00
Xuewei Zhang
23dc265971 Add Prometheus exporter. 2019-06-13 00:51:17 -07:00
Xuewei Zhang
a07176073a Add existing monitors into the problem daemon registration hook. 2019-06-13 00:51:17 -07:00
Xuewei Zhang
63f0e35e56 Implement dynamic problemdaemon registration and initialization.
Added package problemdaemon. All future problem daemons should be
registered by calling problemdaemon.register().

CLI interfaces will be automatically generated for all registered
problem daemons in the form of "--config.DAEMON_NAME"
2019-06-12 18:29:18 -07:00
Xuewei Zhang
5814195ad5 Move apiserver-reporting logic into k8s_exporter.
Added CLI option "enable-k8s-exporter" (default to true). Users can use
this option to enable/disable exporting to Kubernetes control plane.

This commit also removes all the apiserver-specific logic from package
problemdetector.

Future exporters (e.g. to local journald, Prometheus, other control
planes) should implement types.Exporter interface.
2019-06-12 18:29:18 -07:00
Kenjiro Nakayama
a248e2a842 Add validation for the required flag
If --system-log-monitors or --custom-plugin-monitors are not
specified, npd gave us unclear message.

This patch adds the validation and clear error message.
2019-01-17 13:38:19 +09:00
SataQiu
91adf37050 fix typo: NDDE -> NODE, permenantly -> permanently 2018-11-21 17:36:08 +08:00
gkGaneshR
821b8f41aa Modify unit testing of cmd/options
1. Why is this change necessary ?
   Modify unit testing of options in such a way that we specify
the WantedNodeName

2. How to verify this change ?
   Run, make test

Signed-off-by: gkGaneshR <gkganesh126@gmail.com>
2018-03-09 13:17:52 +05:30
gkGaneshR
ca76dc12ee Add dot(.) at the end of comments
Signed-off-by: gkGaneshR <gkganesh126@gmail.com>
2018-03-09 12:08:05 +05:30
gkGaneshR
c75a35099e Avoided changing hostname and changing var names
1. Why is this change necessary ?
 The program avoids changing hostname and the variable name "Options" is changed to
"options". Also, added more comments and formatted. Removed hostname in options since
it will not be changed in tests.

2. How does this change address the issue ?
 While the program is being run, the hostname is not changed. And options can't be
accessed outside(not exported).

3. How to verify this change ?
 Run, make test

Signed-off-by: gkGaneshR <gkganesh126@gmail.com>
2018-03-05 13:49:10 +05:30
gkGaneshR
a591ce52f9 Added copyright 2018 statement
1. Why is this change necessary ?
 Added copyright 2018 statement on options_test.go and added space
between // and text on the comments.

Signed-off-by: gkGaneshR <gkganesh126@gmail.com>
2018-03-04 21:05:16 +05:30
gkGaneshR
25b6c169a2 Unit testing for SetNodeNameOrDie in package cmd/options
1. Why is this change necessary ?
fixes: kubernetes/node-problem-detector#161

2. How does this change address the issue ?
Under package cmd/options, the testing for SetNodeNameOrDie need
to decide Nodename based on environment variable "NODE_NAME" or
hostname or hostnameoverride variable.

3. How to verify this change ?
Run "go test" with admin privilege

Signed-off-by: gkGaneshR <gkganesh126@gmail.com>
2018-03-02 21:03:59 +05:30
Andy Xie
10dbfef1a8 add custom problem detector plugin 2017-11-22 10:14:09 +08:00
Ajit Kumar
5cfe97cd15 change NPD port 2017-07-20 10:36:41 -07:00
Andy Xie
0a914cae09 refactor options pkg 2017-02-23 08:23:52 +08:00