TECHZEN Zenoss User Community ARCHIVE  

Zenoss 4.2.5 - Not able to set device production state

Subject: Zenoss 4.2.5 - Not able to set device production state
Author: Sam Urai
Posted: 2022-02-03 20:01

Zenoss 4.2.5 - Not able to set device production state to "Decommissioned" 

It errors out with this error -  "Failed to change production state.: TypeError: path value must be string or tuple of strings". Here is the error log from the event.log.   I suspect Some sort of data discrepancy or invalid data maybe?

Going to run zodbscan and see it that help. 

Please advise if you have came across this and have it sorted out.
Thanks

------
2022-02-03T16:24:39 ERROR zen.Zuul path value must be string or tuple of strings
Traceback (most recent call last):
  File "/opt/zenoss/Products/Zuul/routers/device.py", line 724, in setProductionState
    facade.setProductionState(uids, prodState)
  File "/opt/zenoss/Products/Zuul/facades/devicefacade.py", line 350, in setProductionState
    dev.setProdState(int(state))
  File "/opt/zenoss/Products/ZenModel/Device.py", line 1301, in setProdState
    ret = super(Device, self).setProdState(state, maintWindowChange, REQUEST)
  File "/opt/zenoss/Products/ZenModel/ManagedEntity.py", line 92, in setProdState
    self.primaryAq().index_object()
  File "/opt/zenoss/Products/ZenModel/Device.py", line 1903, in index_object
    ip.index_object()
  File "/opt/zenoss/Products/ZenModel/IpAddress.py", line 239, in index_object
    self.index_links()
  File "/opt/zenoss/Products/ZenModel/Linkable.py", line 27, in index_links
    cat.catalog_object(self, self.getPrimaryId())
  File "/opt/zenoss/lib/python/Products/ZCatalog/ZCatalog.py", line 476, in catalog_object
    update_metadata=update_metadata)
  File "/opt/zenoss/lib/python/Products/ZCatalog/Catalog.py", line 339, in catalogObject
    blah = x.index_object(index, object, threshold)
  File "/opt/zenoss/lib/python/Products/PluginIndexes/PathIndex/PathIndex.py", line 102, in index_object
    raise TypeError('path value must be string or tuple of strings')
TypeError: path value must be string or tuple of strings
​


------------------------------
Sam
------------------------------


Subject: RE: Zenoss 4.2.5 - Not able to set device production state
Author: Jane Curry
Posted: 2022-02-04 04:24

You might just have a look at the core autodeploy script README  - https://github.com/jcurry/Zenoss_4.2.5_core-autodeploy  .  It documents two patches that Jay Stanley found after the last SUP743.  One of them is to do with ProductionState (though I don't think it fits wxactly what you describe).  I have been running environments built with these 2 extra patches for a very long time - very useful.  The patches will be there as part of the autodeploy script on github and the script should show you how to install them.

Cheers,
Jane

------------------------------
Jane Curry
Skills 1st United Kingdom
jane.curry@skills-1st.co.uk
------------------------------


Subject: RE: Zenoss 4.2.5 - Not able to set device production state
Author: Sam Urai
Posted: 2022-02-04 14:16

That's a good piece of information @Jane . I didn't know about those patches. I'm going to go through the readme and script to get the patches installed.

Thanks much!​

------------------------------
Sam
------------------------------


< Previous
Zenoss 4.2.5 - Receive SNMPv3 traps
  Next
Modeler plugin - zenoss.snmp.SnmpV3EngineIdMap
>