Index: /trunk/FACT++/src/datalogger.cc
===================================================================
--- /trunk/FACT++/src/datalogger.cc	(revision 11219)
+++ /trunk/FACT++/src/datalogger.cc	(revision 11220)
@@ -1373,5 +1373,5 @@
 
     //create the converter for that service
-    if ((!sub.fConv.get()) && isItaReport)
+    if (!sub.fConv.get())
     {
         sub.fConv = shared_ptr<Converter>(new Converter(Out(), I->getFormat()));
@@ -1474,27 +1474,5 @@
                 return;
         }
-    }
-    else
-    {//write entry to both Nightly and run logs
-        ostringstream msg;
-        msg << I->getName() << ": " << I->getString();
-
-        if (fNightlyLogFile.is_open())
-        {
-            MessageImp(fNightlyLogFile).Write(cTime, msg.str().c_str(), fQuality);
-            if (!CheckForOfstreamError(fNightlyLogFile, true))
-                return;
-        }
-        if (targetRunFile && targetRunFile->is_open())
-        {
-            MessageImp(*targetRunFile).Write(cTime, msg.str().c_str(), fQuality);
-            if (!CheckForOfstreamError(*targetRunFile, false))
-                return;
-        }
-    }
-
 #ifdef HAVE_FITS
-    if (isItaReport)
-    {
         //check if the last received event was before noon and if current one is after noon.
         //if so, close the file so that it gets reopened.
@@ -1508,6 +1486,31 @@
             OpenFITSFilesPlease(sub, cRunNumber);
         WriteToFITS(sub);
-    }    
 #endif
+    }
+    else
+    {//write entry to both Nightly and run logs
+        vector<string> strings = sub.fConv->ToStrings(I->getData());
+        if (strings.size() > 1)
+        {
+            ostringstream err;
+            err << "There was more than one string message in service " << I->getName() << " going to fatal error state";
+            Error(err.str());
+        }
+        ostringstream msg;
+        msg << I->getName() << ": " << strings[0];
+
+        if (fNightlyLogFile.is_open())
+        {
+            MessageImp(fNightlyLogFile).Write(cTime, msg.str().c_str(), fQuality);
+            if (!CheckForOfstreamError(fNightlyLogFile, true))
+                return;
+        }
+        if (targetRunFile && targetRunFile->is_open())
+        {
+            MessageImp(*targetRunFile).Write(cTime, msg.str().c_str(), fQuality);
+            if (!CheckForOfstreamError(*targetRunFile, false))
+                return;
+        }
+    }
 
 }
