Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - dkoppenhagen

#1
Hi Alex,
Thanks for your fast response. It works as you described it :)
#2
Hi guys,

I wanna call a script from the library inside of another script. Is this possible? And how can I handover some  values?

let's say I have the following two script in my library:
1.) SCRIPT::A which is called from server console with a praram like "exec SCRIPT::A my-param"
2.) SCRIPT::B

Now I want to call SCRIPT::A inside of SCRIPT::B also with a parameter.
Is this possible?

Best regards,
Danny
#3
General Support / Re: Problem with DCI transform script
January 06, 2017, 11:54:27 AM
Hi Marco thanks for your answer.

I tried this. But it's the same result. So the "Data Type" in configuration section "General" is the type of the final values which is returned after my transformation script runs on collected data? Or is this the type if the raw data which comes from my script?

Another thing is that I need a float value for displaying the values in performance tab.

I thought it's like the following:
1.) The script runs and returns value.
2.) The returned values typse is selected in "Data Type".
3.) The value is processed in performance tab.
4.) Transformation script runs over the last value.
5.) The transformed value is shown in overview and "last values" secion.

So the main problem is: I need a float for performance tab and a string for object overview.

So probably I have to leave it as it is and I change just the value description from "CPU" to "CPU (%)".

Bets regards,
Danny
#4
Hey Victor, is there a roadmap when this feature will be implemented?

Best reagrds,
Danny
#5
General Support / Problem with DCI transform script
January 05, 2017, 10:48:34 AM
Hey guys,

I have a problem trying to transform a value which has been calculated from a script.
The script calculates the average CPU load over multiple CPUs.

It returns a float value (e.g. 41.34444444) which is the CPU load in percentage.
For displaying the data I want to transform this value so that it is displayed as "41.34444444 %".

Unfortunately the transformation doen't seem to work properly so in the object overview and in the view of last values I just see "41.34444444" (without "%").

Do you know what I configured wrong?

Thanks in advance.

Best regards,
  Danny

#6
Okay- I just solved my own problem.
In case somebody wants to do something similar (or maybe for the docs) here is how I solved this:


process = "My-Running-SW-In-The-hrSWRunTable.exe"; // defines process name for lookup

// Create SNMP transport for node
transport = CreateSNMPTransport($node);
if (transport == null) {
  return false;
}

// walk over running software processes
// .iso.org.dod.internet.mgmt.mib-2.host.hrSWRun.hrSWRunTable.hrSWRunEntry.hrSWRunName
vars = SNMPWalk(transport, ".1.3.6.1.2.1.25.4.2.1.2");
if (vars == null) {
  return false;
}

found_process = false; // set flag initially to false

// find process, set flag and break loop if process found
foreach (v: vars) {
  if(v->value == process) {
    trace(1, "SNMP WALK; Search for process: ".process."; Found: ".v->name."=".v->value);
    found_process = true;
    break;
  }
}

if (found_process == true) {
  return true; // process has been found
} else {
  return false; // process has not been found
}


Best regards,
Danny
#7
Hey guys,

I am using the following rule automatic rule to add a template if a specific SNMP values has been found:


transport = CreateSNMPTransport($node);
if (transport == null) {
    return false;
}

value = SNMPGetValue(transport, ".1.3.6.1.2.1.25.4.1.0");
if (value == null) {
    return false;
}
else {
    return true;
}


This works so far pretty well.

But now I have some device where I want to check if specific processes are running on it.
I want to check via SNMP thecomplete hrSWRunTable (.1.3.6.1.2.1.25.4.2) if there is a process with a specific name (hrSWRunName has the OID .1.3.6.1.2.1.25.4.2.1.2).

So maybe I have to get all values form the tabel and then iterate over the entries and compare them. But I don't know how.

Do you have an idea how I should adjust my rule to find out if the process is running?
Maybe there is a better solution?

Btw: I am using NetXMS Version 2.0.7.

Thanks in advance guys.

Best regards,
Danny