summaryrefslogtreecommitdiffstats
path: root/src/collectors/plugins.d/ndsudo.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/collectors/plugins.d/ndsudo.c')
-rw-r--r--src/collectors/plugins.d/ndsudo.c37
1 files changed, 36 insertions, 1 deletions
diff --git a/src/collectors/plugins.d/ndsudo.c b/src/collectors/plugins.d/ndsudo.c
index f5fa78bf58..aeb2865252 100644
--- a/src/collectors/plugins.d/ndsudo.c
+++ b/src/collectors/plugins.d/ndsudo.c
@@ -14,6 +14,38 @@ struct command {
const char *search[MAX_SEARCH];
} allowed_commands[] = {
{
+ .name = "storcli-controllers-info",
+ .params = "/cALL show all J nolog",
+ .search = {
+ [0] = "storcli",
+ [1] = NULL,
+ },
+ },
+ {
+ .name = "storcli-drives-info",
+ .params = "/cALL/eALL/sALL show all J nolog",
+ .search = {
+ [0] = "storcli",
+ [1] = NULL,
+ },
+ },
+ {
+ .name = "lvs-report-json",
+ .params = "--reportformat json --units b --nosuffix -o {{options}}",
+ .search = {
+ [0] = "lvs",
+ [1] = NULL,
+ },
+ },
+ {
+ .name = "igt-json",
+ .params = "-J -s {{interval}}",
+ .search = {
+ [0] = "intel_gpu_top",
+ [1] = NULL,
+ },
+ },
+ {
.name = "nvme-list",
.params = "list --output-format=json",
.search = {
@@ -109,7 +141,7 @@ bool check_string(const char *str, size_t index, char *err, size_t err_size) {
if(!((c >= 'A' && c <= 'Z') ||
(c >= 'a' && c <= 'z') ||
(c >= '0' && c <= '9') ||
- c == ' ' || c == '_' || c == '-' || c == '/' || c == '.')) {
+ c == ' ' || c == '_' || c == '-' || c == '/' || c == '.' || c == ',')) {
snprintf(err, err_size, "command line argument No %zu includes invalid character '%c'", index, c);
return false;
}
@@ -260,6 +292,9 @@ int main(int argc, char *argv[]) {
return 3;
}
+ char new_path[] = "/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin";
+ setenv("PATH", new_path, 1);
+
bool found = false;
char filename[FILENAME_MAX];