Difference between revisions of "Script to Check IP Address Attributes"

From Observer GigaFlow Support | VIAVI Solutions Inc.
Jump to: navigation, search
 
(4 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 +
[[Category:Scripts]]
 
Checking whether an ip address has attributes in a category, adding or updating
 
Checking whether an ip address has attributes in a category, adding or updating
 
  var utils = Java.type('ros.CROSUtils');
 
  var utils = Java.type('ros.CROSUtils');
 
  updateAttribute("172.21.21.21","Function2","Kevins PC2");
 
  updateAttribute("172.21.21.21","Function2","Kevins PC2");
 
  function updateAttribute(ipaddress,category,newattribute){
 
  function updateAttribute(ipaddress,category,newattribute){
if (actions.allIPs.containsKey(utils.inet_atob(ipaddress))){
+
  if (actions.allIPs.containsKey(utils.inet_atob(ipaddress))){
var ip = actions.allIPs.get(utils.inet_atob(ipaddress))
+
    var ip = actions.allIPs.get(utils.inet_atob(ipaddress))
var categoryid = ip.getCategory(category);
+
    var categoryid = ip.getCategory(category);
  var atrribs = ip.getAttributes(categoryid)
+
    var atrribs = ip.getAttributes(categoryid)
  if (atrribs.length()>1){
+
    if (atrribs.length()>1){
  log.warn("Already have "+ipaddress+" multuple attributes:"+atrribs);
+
        log.warn("Already have "+ipaddress+" multiple attributes:"+atrribs);
  }else if (atrribs.length()==1){
+
    }else if (atrribs.length()==1){
  log.warn("Already have "+ipaddress+" single attribute:"+atrribs);
+
        log.warn("Already have "+ipaddress+" single attribute:"+atrribs);
 
           if (atrribs.get(0)===newattribute){
 
           if (atrribs.get(0)===newattribute){
 
             log.warn("Already have "+ipaddress+" same single attribute:"+atrribs.get(0));
 
             log.warn("Already have "+ipaddress+" same single attribute:"+atrribs.get(0));
Line 18: Line 19:
 
             ip.addAttrib(categoryid,newattribute);
 
             ip.addAttrib(categoryid,newattribute);
 
           }
 
           }
}else{
+
      }else{
  log.warn("No "+ipaddress+" attributes for category:"+category+" ,adding");
+
  log.warn("No "+ipaddress+" attributes for category:"+category+" ,adding");
            ip.addAttrib(categoryid,newattribute);
+
        ip.addAttrib(categoryid,newattribute);
  }
+
      }
  }else{
+
      }else{
 
     log.warn("No such IP address known"+ipaddress);
 
     log.warn("No such IP address known"+ipaddress);
 
     }
 
     }
 
  }
 
  }

Latest revision as of 11:59, 23 November 2018

Checking whether an ip address has attributes in a category, adding or updating

var utils = Java.type('ros.CROSUtils');
updateAttribute("172.21.21.21","Function2","Kevins PC2");
function updateAttribute(ipaddress,category,newattribute){
 if (actions.allIPs.containsKey(utils.inet_atob(ipaddress))){
    var ip = actions.allIPs.get(utils.inet_atob(ipaddress))
    var categoryid = ip.getCategory(category);
    var atrribs = ip.getAttributes(categoryid)
    if (atrribs.length()>1){
       log.warn("Already have "+ipaddress+" multiple attributes:"+atrribs);
    }else if (atrribs.length()==1){
       log.warn("Already have "+ipaddress+" single attribute:"+atrribs);
         if (atrribs.get(0)===newattribute){
           log.warn("Already have "+ipaddress+" same single attribute:"+atrribs.get(0));
         }else{
           log.warn("Updating "+ipaddress+" single attribute from :"+atrribs.get(0) +" to "+newattribute);
         	ip.removeAttrib(categoryid,atrribs.get(0));
           ip.addAttrib(categoryid,newattribute);
         }
     }else{
 	log.warn("No "+ipaddress+" attributes for category:"+category+" ,adding");
       ip.addAttrib(categoryid,newattribute);
     }
     }else{
   log.warn("No such IP address known"+ipaddress);
   }
}