diff --git a/src/DataVampire.cpp b/src/DataVampire.cpp index cc643c1853e84c35d109d8c9a301b9f4bdcd8861..ac14883e3b2ff4e7120e544497c3c70382992a65 100644 --- a/src/DataVampire.cpp +++ b/src/DataVampire.cpp @@ -281,6 +281,11 @@ void DataVampire::init_device() } device_name = new_configuration; + INFO_STREAM << "Command name: " << command_name << endl; + INFO_STREAM << "Device name: " << device_name << endl; + + device = 0; + try { device = new Tango::DeviceProxy(device_name); @@ -291,10 +296,16 @@ void DataVampire::init_device() set_state(Tango::ON); set_status("Connected to device"); } + catch (Tango::DevFailed &e) { + INFO_STREAM << e.errors[0].desc << ", " << device_name << " " << command_name << endl; + INFO_STREAM << e.errors[0].reason << ", " << device_name << " " << command_name << endl; + set_state(Tango::FAULT); + set_status("Failed to execute device command, check CommandString property and restart device"); + } catch(...) { set_state(Tango::FAULT); set_status("Failed to execute device command, check CommandString property and restart device"); - printf("Error checking %s\n",new_configuration.c_str()); + INFO_STREAM << "Generic error, failed to execute command_query on device " << device_name << " " << command_name << endl; } /*