Script to Check IP Address Attributes
From Observer GigaFlow Support | VIAVI Solutions Inc.
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);
}
}