diff --git a/src/vm/VirtualMachine.cc b/src/vm/VirtualMachine.cc index 4e5b34ed7f..ab3dbd48d7 100644 --- a/src/vm/VirtualMachine.cc +++ b/src/vm/VirtualMachine.cc @@ -1478,14 +1478,20 @@ error_common: int VirtualMachine::update_monitoring(SqlDB * db) { - ostringstream oss; - int rc; + ostringstream oss; + int rc; string xml_body; string error_str; char * sql_xml; - sql_xml = db->escape_str(to_xml(xml_body).c_str()); + oss << "" + << "" << oid << "" + << "" << last_poll << "" + << monitoring.to_xml(xml_body) + << ""; + + sql_xml = db->escape_str(oss.str().c_str()); if ( sql_xml == 0 ) { @@ -1497,6 +1503,8 @@ int VirtualMachine::update_monitoring(SqlDB * db) goto error_xml; } + oss.str(""); + oss << "REPLACE INTO " << monit_table << " ("<< monit_db_names <<") VALUES (" << oid << "," << last_poll << ","