Run/control External Processes
Last updated on 18 September, 2024The most robust way to call external processes is to use the Groovy method waitForProcessOutput.
For example:
Join fellow LogicMonitor users at the Elevate Community Conference and get hands-on with our latest product innovations.
Register NowGet real-time insights and automation for comprehensive, seamless monitoring with agentless architecture.
Platform OverviewWhether you work in MSP, Enterprise IT or somewhere in between, the solution is clear.
Solutions OverviewExplore our blogs, guides, case studies, eBooks, and more actionable insights to enhance your IT monitoring and observability.
View ResourcesRead through our documentation, check out our latest release notes, or submit a ticket to our world-class customer service team.
View ResourcesCome join our live training webinar every other Wednesday at 11am PST and hear LogicMonitor experts explain best practices and answer common questions. We understand these are uncertain times, and we are here to help!
Sign up hereThe most robust way to call external processes is to use the Groovy method waitForProcessOutput.
For example:
command="../bin/ipmiutil sensor -c -N " + hostname + " -U "+User+" -P " +Pass def sout = new StringBuffer() def serr = new StringBuffer() def proc = command.execute() proc.waitForProcessOutput(sout, serr) if(proc.exitValue() == 0) { output=sout.toString() output.eachLine { if (it =~ / Full /) { elements=it.split(/ *\| */) if ( elements[5]=="OK" ) { //only discover those reporting a status println elements[0]+"##"+elements[4]+":"+elements[3] } } } else { // error handling ...}
A representative will reach out shortly with next steps.