Difference between revisions of "Using nxshell to automate bulk operations"

Jump to navigation Jump to search
m
Text replacement - "^" to "{{deprecated}}"
m (Text replacement - "^" to "{{deprecated}}")
 
(2 intermediate revisions by 2 users not shown)
Line 1: Line 1:
= Introduction =
{{deprecated}}= Introduction =
NxShell is based on Jython and provide access to NetXMS Java API using interactive shell. NxShell is build as single jar file, which includes all required libraries.
NxShell is based on Jython and provide access to NetXMS Java API using interactive shell. NxShell is build as single jar file, which includes all required libraries.


Line 237: Line 237:
from org.netxms.client.objects import Node, Template
from org.netxms.client.objects import Node, Template


for o in filter(lambda x: (isinstance(x, Node) or isinstance(x, Template)), session.getAllObjects()):
for o in filter(lambda x: (isinstance(x, Node) or isinstance(x, Template)), session.allObjects):
   config = session.openDataCollectionConfiguration(o.getObjectId())
   config = session.openDataCollectionConfiguration(o.objectId)
   for dc in config.getItems():
   for dc in config.items:
       if dc.getTemplateId() == 0:
       if dc.templateId == 0:
         dc.setRetentionTime(0)
         dc.setRetentionTime(0)
         config.modifyObject(dc)
         config.modifyObject(dc)
   config.close()
   config.close()
   print "%s %s updated" % ("Node" if isinstance(o, Node) else "Template", o.getObjectName())
   print "%s %s updated" % ("Node" if isinstance(o, Node) else "Template", o.objectName)
</syntaxhighlight>
</syntaxhighlight>


Line 256: Line 256:
   except:
   except:
     print "No package found"
     print "No package found"
</syntaxhighlight>
== Enter/Leave Maintenance for node ==
<syntaxhighlight lang="python">
from org.netxms.client.objects import Node
import org.netxms.client.NXCSession
NETXMS_NODE = "__NodeName__"
STATE = False or True
node = session.findObjectByName(NETXMS_NODE.strip())
if node:
  session.setObjectMaintenanceMode(node.getObjectId(), STATE)
</syntaxhighlight>
</syntaxhighlight>

Navigation menu