diff --git a/InnerDetector/InDetCalibAlgs/PixelCalibAlgs/ChargeCalibration/pixel/PixelCalibration.cxx b/InnerDetector/InDetCalibAlgs/PixelCalibAlgs/ChargeCalibration/pixel/PixelCalibration.cxx
index c079391701c1f7279e1ee1876dba7b18bee220cd..bc66518441b69f33d8a24cb5bf58b7e16fb8f27c 100644
--- a/InnerDetector/InDetCalibAlgs/PixelCalibAlgs/ChargeCalibration/pixel/PixelCalibration.cxx
+++ b/InnerDetector/InDetCalibAlgs/PixelCalibAlgs/ChargeCalibration/pixel/PixelCalibration.cxx
@@ -17,6 +17,8 @@
 #include "TFile.h"
 
 #include <iostream>
+#include <fstream>
+#include <sstream>
 #include <string>
 #include <vector>
 #include <map>
@@ -122,17 +124,21 @@ int main(int argc, char *argv[]) {
     }
     time(&end);
     printf("Time taken for TOT calibration:%7.1f seconds\n",double(end - start));
- 
- 
+    
+    std::ofstream myFile("log_"+sWhichPart.at(whichPart)+".txt");
+    
     printf("Total MODs:%4ld\n",map_values.size());
     for(const auto & [key, MOD] : map_values){
         
         for(const auto& FE : MOD){
-            FE->printDBformat();            
+            std::stringstream sstr = FE->printDBformat();
+            printf("%s\n",sstr.str().c_str());  
+            myFile << sstr.str() << "\n";    
         }
-
     }    
     
+    myFile.close();
+
     printf("********** JOB finished **********\n");
     return 0;
 }
diff --git a/InnerDetector/InDetCalibAlgs/PixelCalibAlgs/ChargeCalibration/pixel/tools/CalibFrontEndInfo.cxx b/InnerDetector/InDetCalibAlgs/PixelCalibAlgs/ChargeCalibration/pixel/tools/CalibFrontEndInfo.cxx
index 25fa5055a13004a85c45e6b350f7243f99950054..3e54340179c4c1e06f5981840e48083f7affecd7 100644
--- a/InnerDetector/InDetCalibAlgs/PixelCalibAlgs/ChargeCalibration/pixel/tools/CalibFrontEndInfo.cxx
+++ b/InnerDetector/InDetCalibAlgs/PixelCalibAlgs/ChargeCalibration/pixel/tools/CalibFrontEndInfo.cxx
@@ -11,22 +11,23 @@
 
 #include "CalibFrontEndInfo.h"
 
-void CalibFrontEndInfo::printDBformat()    const {
-
-    if(m_FEid == 0) printf("%s\n",m_MODid_str.c_str());
-    printf("I%d %d %d %d %d %d %d %d %d %d %d %d %d %.5e %.5e %.5e %.5e %.5e %.5e %.5e %.5e\n",
-
-           m_FEid,
-
-           m_NormalTheshold, m_NormalRms, m_NormalNoise, m_NormalIntime,
-           m_LongTheshold  , m_LongRms  , m_LongNoise  , m_LongIntime  ,
-           m_GangedTheshold, m_GangedRms, m_GangedNoise, m_GangedIntime,
-
-           m_NormalFitParams.at(0), m_NormalFitParams.at(1), m_NormalFitParams.at(2),
-           m_LongFitParams.at(0)  , m_LongFitParams.at(1)  , m_LongFitParams.at(2)  ,
-           m_SigFitParams.at(0)   , m_SigFitParams.at(1)
-          );
-    return;
+std::stringstream CalibFrontEndInfo::printDBformat()    const {
+    
+    std::stringstream mytext;
+    
+    if(m_FEid == 0) mytext << m_MODid << " " <<m_MODid_str << "\n";
+    
+    mytext  << "I" << m_FEid
+            << " " << m_NormalTheshold << " " << m_NormalRms << " " << m_NormalNoise << " " << m_NormalIntime 
+            << " " << m_LongTheshold   << " " << m_LongRms   << " " << m_LongNoise   << " " << m_LongIntime 
+            << " " << m_GangedTheshold << " " << m_GangedRms << " " << m_GangedNoise << " " << m_GangedIntime
+            
+            << " " << m_NormalFitParams.at(0) << " " << m_NormalFitParams.at(1) << " " << m_NormalFitParams.at(2)
+            << " " << m_LongFitParams.at(0)   << " " << m_LongFitParams.at(1)   << " " << m_LongFitParams.at(2)  
+            << " " << m_SigFitParams.at(0)    << " " << m_SigFitParams.at(1) ;          
+    
+    return mytext;
+    
 };
 
 void CalibFrontEndInfo::printBeautyformat()    const {
@@ -37,7 +38,7 @@ void CalibFrontEndInfo::printBeautyformat()    const {
            m_FEid,
 
            m_NormalTheshold, m_NormalRms, m_NormalNoise, m_NormalIntime,
-           m_LongTheshold, m_LongRms, m_LongNoise, m_LongIntime,
+           m_LongTheshold  , m_LongRms  , m_LongNoise  , m_LongIntime  ,
            m_GangedTheshold, m_GangedRms, m_GangedNoise, m_GangedIntime,
 
            m_NormalFitParams.at(0), m_NormalFitParams.at(1), m_NormalFitParams.at(2) , m_NormalFitParamsQuality.at(0) , m_NormalFitParamsQuality.at(1),
diff --git a/InnerDetector/InDetCalibAlgs/PixelCalibAlgs/ChargeCalibration/pixel/tools/CalibFrontEndInfo.h b/InnerDetector/InDetCalibAlgs/PixelCalibAlgs/ChargeCalibration/pixel/tools/CalibFrontEndInfo.h
index 98850c15d1320a70f9b1e6d6904ff8005df8b97d..bff45900ddd0298e635c0e0dde715a527d034f97 100644
--- a/InnerDetector/InDetCalibAlgs/PixelCalibAlgs/ChargeCalibration/pixel/tools/CalibFrontEndInfo.h
+++ b/InnerDetector/InDetCalibAlgs/PixelCalibAlgs/ChargeCalibration/pixel/tools/CalibFrontEndInfo.h
@@ -13,6 +13,7 @@
 #define PIXCALIBFRONTENDINFO_H
 
 
+#include <sstream>
 #include <iostream>
 #include <string>
 #include <vector>
@@ -75,7 +76,7 @@ class CalibFrontEndInfo {
         
         
         //Prints the information stored in case of need.
-        void printDBformat()    const;
+        std::stringstream printDBformat()    const;
         void printBeautyformat()const;
         void printVals()        const;