We've already covered some error handling that can be added to our SDB modules, but you may still encounter problems. Like grains and pillars, the most common involve data not showing up when expected.
You may find that when you include an SDB URI in your configuration, it doesn't resolve as you think it might. If you've made typos in the earlier SDB code, you have probably already figured out that sdb.get
is more than happy to raise trace backs when there are syntactical errors. But if using salt-call
on sdb.get
doesn't raise any errors that you can see, then it may not be a problem in your code.
Before you start to blame other services, it's best to make sure that you're not to blame. Start logging key pieces of information, to make sure it's showing up as you expect. Make sure to add the following lines toward the top of your module:
import logging log = logging.getLogger(__name__)
Then you can use log.debug()
to log those pieces of information...