diff --git a/Control/AthenaMonitoring/AthenaMonitoring/ManagedMonitorToolBase.h b/Control/AthenaMonitoring/AthenaMonitoring/ManagedMonitorToolBase.h
index e701e66c222805c79d45448483422f390d1f278c..5da30d77d85d73bfad344bb1e4e98e9baf4f75b3 100755
--- a/Control/AthenaMonitoring/AthenaMonitoring/ManagedMonitorToolBase.h
+++ b/Control/AthenaMonitoring/AthenaMonitoring/ManagedMonitorToolBase.h
@@ -719,6 +719,7 @@ class ManagedMonitorToolBase : public AthAlgTool, virtual public IMonitorToolBas
 
       std::vector<std::string> m_vTrigChainNames, m_vTrigGroupNames;
       StatusCode parseList(const std::string&, std::vector<std::string>&);
+      void updateTriggersForGroups(std::vector<std::string>&);
 
       StatusCode registerMetadata(const std::string& streamName, const std::string& hName, const MonGroup& group);
 
diff --git a/Control/AthenaMonitoring/AthenaMonitoring/ManagedMonitorToolTest.h b/Control/AthenaMonitoring/AthenaMonitoring/ManagedMonitorToolTest.h
index 5c1c86fc8bf1757d24c3ea446ce4bfa18b7b80b8..12e2561cc66c4ecd4c22c73c5c68c78485d5dede 100755
--- a/Control/AthenaMonitoring/AthenaMonitoring/ManagedMonitorToolTest.h
+++ b/Control/AthenaMonitoring/AthenaMonitoring/ManagedMonitorToolTest.h
@@ -55,6 +55,8 @@ class ManagedMonitorToolTest : public ManagedMonitorToolBase
       TH1*               m_managedHist_eventsBlock;
       TH1*               m_managedHist_run;
 
+      TH1*               m_Lumi;
+
       TGraph*            m_graph;
       TGraph*            m_managedGraph;
       TTree*             m_ntuple;
diff --git a/Control/AthenaMonitoring/cmt/requirements b/Control/AthenaMonitoring/cmt/requirements
index 099fe8e5f175a7f57024a27ef4aab9f1b22e4a60..4918e1c935a1f58ea96a266e05e9bd717aecd64e 100755
--- a/Control/AthenaMonitoring/cmt/requirements
+++ b/Control/AthenaMonitoring/cmt/requirements
@@ -22,7 +22,7 @@ use AthenaPoolUtilities   AthenaPoolUtilities-*    Database/AthenaPOOL
 use SGAudCore             SGAudCore-*              Control/SGMon
 use AtlasCORAL            AtlasCORAL-*             External
 use LWHists               LWHists-*                Tools
-
+use AtlasBoost            AtlasBoost-*             External
 # Specify required ROOT components for cmake (transparent to CMT)
 apply_pattern cmake_add_command command="find_package(ROOT COMPONENTS MathCore)"
 
diff --git a/Control/AthenaMonitoring/python/DQMonFlags.py b/Control/AthenaMonitoring/python/DQMonFlags.py
index 98d339b78289b25d9f76d37cefdd8fccaa18c9cf..914b99d1b2b9080aa9a5b3909372002863a76327 100644
--- a/Control/AthenaMonitoring/python/DQMonFlags.py
+++ b/Control/AthenaMonitoring/python/DQMonFlags.py
@@ -178,7 +178,7 @@ class doMuonTrackMon(JobProperty):
     """ Switch for muon track monitoring """
     statusOn=True
     allowedTypes=['bool']
-    StoredValue=False
+    StoredValue=True
 list+=[doMuonTrackMon]
 
 class doMuonAlignMon(JobProperty):
@@ -227,7 +227,7 @@ class doStreamAwareMon(JobProperty):
     """ Switch for stream-aware monitoring """
     statusOn=True
     allowedTypes=['bool']
-    StoredValue=True
+    StoredValue=False
 list+=[doStreamAwareMon]
 
 class monType(JobProperty):
@@ -349,6 +349,13 @@ class nameTrigDecTool(JobProperty):
     StoredValue  = 'monTrigDecTool'
 list+=[nameTrigDecTool]
 
+class nameTrigTransTool(JobProperty):
+    """ name of trigger translator tool """
+    statusOn     = True
+    allowedTypes = ['str']
+    StoredValue  = 'monTrigTransTool'
+list+=[nameTrigTransTool]
+
 class monToolPostExec(JobProperty):
     """ MonManager environment """
     statusOn     = True
diff --git a/Control/AthenaMonitoring/share/DQMonFlagsConfig_jobOptions.py b/Control/AthenaMonitoring/share/DQMonFlagsConfig_jobOptions.py
index 11afe7e0e8a56cd701bef53c56d6dbaf618161fe..621a2a9d00382b3199773294132be27089455eca 100644
--- a/Control/AthenaMonitoring/share/DQMonFlagsConfig_jobOptions.py
+++ b/Control/AthenaMonitoring/share/DQMonFlagsConfig_jobOptions.py
@@ -238,8 +238,9 @@ if (not rec.doJetMissingETTag() or (rec.readRDO() and not jobproperties.JetRecFl
 if (not rec.doTau()):
    DQMonFlags.doTauMon=False
 
-if (not recAlgs.doMissingET()):
-   DQMonFlags.doMissingEtMon=False
+# covered now by doJetMissingETTag
+# if (not recAlgs.doMissingET()):
+#    DQMonFlags.doMissingEtMon=False
 
 #
 # Stream Aware Monitoring
diff --git a/Control/AthenaMonitoring/share/DataQualitySteering_jobOptions.py b/Control/AthenaMonitoring/share/DataQualitySteering_jobOptions.py
index 4eff722bf086e681b08834a5c4e35277edbf498a..5499101d87b36001f911ab9970db17d95389708c 100644
--- a/Control/AthenaMonitoring/share/DataQualitySteering_jobOptions.py
+++ b/Control/AthenaMonitoring/share/DataQualitySteering_jobOptions.py
@@ -7,7 +7,6 @@
 # disable InDetPerformanceMonitoring, JetMonitoring until further notice 
 # - PUEO 20140401
 TRTELEMON=False
-IDPERFMON=False
 
 local_logger = logging.getLogger('DataQualitySteering_jobOptions')
 
@@ -101,7 +100,7 @@ if DQMonFlags.doMonitoring():
    #----------------#
    # ID performance #
    #----------------#
-   if DQMonFlags.doInDetPerfMon() and IDPERFMON:
+   if DQMonFlags.doInDetPerfMon():
       try:
          include("InDetPerformanceMonitoring/IDPerfMon_jobOptions.py")
          IDPerfMonManager = topSequence.IDPerfMonManager
@@ -235,6 +234,7 @@ if DQMonFlags.doMonitoring():
    # Post-setup configuration #
    #--------------------------#
    monToolSet_after = set(ToolSvc.getChildren())
+   local_logger.debug('DQ Post-Setup Configuration')
    for tool in monToolSet_after-monToolSet_before:
       # if we have the FilterTools attribute, assume this is in fact a
       # monitoring tool
@@ -242,13 +242,16 @@ if DQMonFlags.doMonitoring():
       if globalflags.DataSource.get_Value() == 'geant4' or not DQMonFlags.enableLumiAccess():
          if 'EnableLumi' in dir(tool):
             tool.EnableLumi = False
-      if DQMonFlags.monToolPostExec():
-         local_logger.debug('DQ Post-Setup Configuration')
-         postprocfunc = eval(DQMonFlags.monToolPostExec())
-         if hasattr(tool, 'FilterTools'):
+      if hasattr(tool, 'FilterTools'):
+         # give all the tools the trigger translator
+         if DQMonFlags.useTrigger():
+            tool.TriggerTranslatorTool = monTrigTransTool
+
+         if DQMonFlags.monToolPostExec():
+            postprocfunc = eval(DQMonFlags.monToolPostExec())
             local_logger.debug('Applying postexec transform to  ===> %s', tool)
             postprocfunc(tool)
-         del postprocfunc
+            del postprocfunc
 
    del monToolSet_before, monToolSet_after
 
diff --git a/Control/AthenaMonitoring/share/ManagedMonitorToolTest.py b/Control/AthenaMonitoring/share/ManagedMonitorToolTest.py
index 98d9af1d2e10b1fc52f3347c09a4cc382c1d186f..0bc1d4fc6009ef6adb67de9c8726504c32172521 100755
--- a/Control/AthenaMonitoring/share/ManagedMonitorToolTest.py
+++ b/Control/AthenaMonitoring/share/ManagedMonitorToolTest.py
@@ -5,7 +5,8 @@ globalflags.InputFormat = 'pool'
 
 from AthenaCommon.AthenaCommonFlags import athenaCommonFlags as af
 af.FilesInput = [
-"/afs/cern.ch/user/y/yuraic/testarea/test_lumi/data/data12_8TeV.00211670.express_express.merge.ESD.r4065_p1278_tid01070414_00/ESD.01070414._000034.pool.root.1"
+"/afs/cern.ch/user/y/yuraic/test_CaloMonitoring/test_CaloMon/myAOD_JetTauEtmiss_0.AOD.pool.root"
+#"/afs/cern.ch/user/y/yuraic/testarea/test_lumi/data/data12_8TeV.00211670.express_express.merge.ESD.r4065_p1278_tid01070414_00/ESD.01070414._000034.pool.root.1"
 #"root://eosatlas//eos/atlas/atlasdatadisk/data12_8TeV/ESD/r4065/data12_8TeV.00204955.express_express.recon.ESD.r4065_tid01034439_00/ESD.01034439._000461.pool.root.1"
 ]
 
diff --git a/Control/AthenaMonitoring/share/TrigDecTool_jobOptions.py b/Control/AthenaMonitoring/share/TrigDecTool_jobOptions.py
index fab955df3c9663ff68b19cdd4e6652f099c1fbfc..4933f86038e13596ba80abaaf63796273ad4504d 100644
--- a/Control/AthenaMonitoring/share/TrigDecTool_jobOptions.py
+++ b/Control/AthenaMonitoring/share/TrigDecTool_jobOptions.py
@@ -32,8 +32,32 @@ if DQMonFlags.useTrigger():
       ToolSvc += monTrigDecTool
 
    tdt_local_logger.info('Scheduling the trigger translator')
+   # Look up all monitoring menu lists, shove into trigger translator
+   # pass them in as joined strings, unpack in tool
+   from TrigHLTMonitoring.HLTMonTriggerList import HLTMonTriggerList
+   tdt_local_hltconfig = HLTMonTriggerList()
+   import collections
+   tdt_mapping = {}
+   for tdt_menu, tdt_menu_item in tdt_local_hltconfig.__dict__.items():
+      if not isinstance(tdt_menu_item, collections.Iterable): continue
+      # work around possibly buggy category items
+      if isinstance(tdt_menu_item, basestring): 
+         tdt_local_logger.debug('String, not list: %s' % tdt_menu)
+         tdt_menu_item = [tdt_menu_item]
+      if len([_ for _ in tdt_menu_item if not (_.startswith('HLT_') or _.startswith('L1'))]) != 0:
+         tdt_local_logger.debug('Bad formatting: %s' % tdt_menu)
+      patched_names = []
+      tdt_menu_item = [_ if (_.startswith('HLT_') or _.startswith('L1_')) else 'HLT_' + _
+                       for _ in tdt_menu_item]
+      tdt_mapping[tdt_menu] = ','.join(tdt_menu_item)
+         
+   for k, v in tdt_mapping.items():
+      tdt_local_logger.info('Category %s resolves to %s' % (k, v))
+
    from AthenaMonitoring.AthenaMonitoringConf import TriggerTranslatorToolSimple
-   monTrigTransTool = TriggerTranslatorToolSimple()
+   monTrigTransTool = TriggerTranslatorToolSimple(
+      name = DQMonFlags.nameTrigTransTool(),
+      triggerMapping = tdt_mapping)
    ToolSvc += monTrigTransTool
 
-del tdt_local_logger
+del tdt_local_logger, tdt_local_hltconfig, tdt_mapping
diff --git a/Control/AthenaMonitoring/src/AthenaMonManager.cxx b/Control/AthenaMonitoring/src/AthenaMonManager.cxx
index 6ff2beb0a2d2534d32f4177b35c939a51af48a72..4f40bd905e7de4355508f5040cdbc6aaca2f5d1d 100755
--- a/Control/AthenaMonitoring/src/AthenaMonManager.cxx
+++ b/Control/AthenaMonitoring/src/AthenaMonManager.cxx
@@ -884,7 +884,11 @@ writeAndResetLWHist( const std::string& key, const std::string& streamName )
                 lwhist->setOwnsROOTHisto(true);//Since we deregistered
 
                 //LWHistAthMonWrapper::deleteLWHist(lwhist);
-                LWHistAthMonWrapper::removeCustomData(lwhist);
+                // Yuriy: commented out this line to make the code properly place  histograms
+                // in the offline environament; It has been a bug after I fixed online environment
+                // with a new approach; Basically inherited from writeAndDeletLWHist(...)
+                //LWHistAthMonWrapper::removeCustomData(lwhist);
+
                 lwhist->Reset();
 
                 lwhist=0;
diff --git a/Control/AthenaMonitoring/src/ManagedMonitorToolBase.cxx b/Control/AthenaMonitoring/src/ManagedMonitorToolBase.cxx
index 2002d02e0c37984cbca8cef79e5c51959d196027..735ec29367b498fee2d316396b3721f0427e9213 100755
--- a/Control/AthenaMonitoring/src/ManagedMonitorToolBase.cxx
+++ b/Control/AthenaMonitoring/src/ManagedMonitorToolBase.cxx
@@ -692,6 +692,9 @@ initialize()
             msg(MSG::WARNING) << "Error parsing the trigger chain list, using empty list" << endreq;
             m_vTrigChainNames.clear();
          }
+	 if (!m_trigTranslator.empty()) {
+	   updateTriggersForGroups(m_vTrigChainNames);
+	 }
       }
       else {
 	ATH_MSG_DEBUG("  --> trigger chain list empty");
@@ -703,6 +706,9 @@ initialize()
             msg(MSG::WARNING) << "Error parsing the trigger group names list, using empty list" << endreq;
             m_vTrigGroupNames.clear();
          }
+	 if (!m_trigTranslator.empty()) {
+	   updateTriggersForGroups(m_vTrigChainNames);
+	 }
       }
       else {
 	ATH_MSG_DEBUG("  --> trigger group list empty");
@@ -912,13 +918,14 @@ fillHists()
       (!m_useTrigger
        || (m_vTrigChainNames.size()>0 && trigChainsArePassed(m_vTrigChainNames))
        || (m_vTrigGroupNames.size()>0 && trigChainsArePassed(m_vTrigGroupNames))) ) {
+     ATH_MSG_DEBUG("Passed trigger, presumably");
       d->benchPreFillHistograms();
       StatusCode sc3 = fillHistograms();
       m_haveClearedLastEventBlock = true;
       d->benchPostFillHistograms();
       sc3.setChecked();
       ++m_nEvents;
-   }
+   } else { ATH_MSG_DEBUG("Failed trigger, presumably"); }
 
    ++m_nEventsIgnoreTrigger;
    if( newLumiBlock && (m_nEventsIgnoreTrigger != 1) ) {
@@ -1410,12 +1417,12 @@ StatusCode ManagedMonitorToolBase::regHist( LWHist* h, const MonGroup& group )
       return StatusCode::FAILURE;
 
    if (!m_bookHistogramsInitial) {
-           ATH_MSG_INFO("Yura: very first time");
+           ATH_MSG_DEBUG("Yura: very first time");
 	   if ( (group.histo_mgmt() & ATTRIB_UNMANAGED) == 0 ) {
 
-               ATH_MSG_INFO("Yura: we have managed histograms");
+               ATH_MSG_DEBUG("Yura: we have managed histograms");
 	       if (m_supportedIntervalsForRebooking.count(group.interval())) {
-                       ATH_MSG_INFO("        Yura: adding histogram" << h->GetName());
+                       ATH_MSG_DEBUG("        Yura: adding histogram" << h->GetName());
 		       m_templateLWHistograms[group.interval()].push_back( MgmtParams<LWHist>(h, group) );
 	       } else {
 		       ATH_MSG_ERROR("Attempt to book managed histogram " << h->GetName() << " with invalid interval type " << intervalEnumToString(group.interval()));
@@ -1771,7 +1778,9 @@ lbAverageInteractionsPerCrossing()
     if ( m_hasRetrievedLumiTool ) {
         return m_lumiTool->lbAverageInteractionsPerCrossing();
     } else {
-        ATH_MSG_FATAL("! Luminosity tool has been disabled ! lbAverageInteractionsPerCrossing() can't work properly! ");
+        //ATH_MSG_FATAL("! Luminosity tool has been disabled ! lbAverageInteractionsPerCrossing() can't work properly! ");
+        ATH_MSG_DEBUG("Warning: lbAverageInteractionsPerCrossing() - luminosity tools are not retrieved or turned on (i.e. EnableLumi = False)");
+        return -1.0;
     }
     return -0.0;
 }
@@ -1789,7 +1798,9 @@ lbInteractionsPerCrossing()
 
         return instmu;
     } else {
-        ATH_MSG_FATAL("! Luminosity tool has been disabled ! lbInteractionsPerCrossing() can't work properly! ");
+        //ATH_MSG_FATAL("! Luminosity tool has been disabled ! lbInteractionsPerCrossing() can't work properly! ");
+        ATH_MSG_DEBUG("Warning: lbInteractionsPerCrossing() - luminosity tools are not retrieved or turned on (i.e. EnableLumi = False)");
+        return -1.0;
     }
     return -0.0;
 }
@@ -1802,7 +1813,9 @@ lbAverageLuminosity()
     if ( m_hasRetrievedLumiTool ) {
         return m_lumiTool->lbAverageLuminosity();
     } else {
-        ATH_MSG_FATAL("! Luminosity tool has been disabled ! lbAverageLuminosity() can't work properly! ");
+        //ATH_MSG_FATAL("! Luminosity tool has been disabled ! lbAverageLuminosity() can't work properly! ");
+        ATH_MSG_DEBUG("Warning: lbAverageLuminosity() - luminosity tools are not retrieved or turned on (i.e. EnableLumi = False)");
+        return -1.0;
     }
     return -0.0;
 }
@@ -1815,7 +1828,9 @@ lbLuminosityPerBCID()
     if ( m_hasRetrievedLumiTool ) {
         return m_lumiTool->lbLuminosityPerBCID();
     } else {
-        ATH_MSG_FATAL("! Luminosity tool has been disabled ! lbLuminosityPerBCID() can't work properly! ");
+        //ATH_MSG_FATAL("! Luminosity tool has been disabled ! lbLuminosityPerBCID() can't work properly! ");
+        ATH_MSG_DEBUG("Warning: lbLuminosityPerBCID() - luminosity tools are not retrieved or turned on (i.e. EnableLumi = False)");
+        return -1.0;
     }
     return -0.0;
 }
@@ -1832,7 +1847,9 @@ lbAverageLivefraction()
     if ( m_hasRetrievedLumiTool ) {
         return m_liveTool->lbAverageLivefraction();
     } else {
-        ATH_MSG_FATAL("! Luminosity tool has been disabled ! lbAverageLivefraction() can't work properly! ");
+        //ATH_MSG_FATAL("! Luminosity tool has been disabled ! lbAverageLivefraction() can't work properly! ");
+        ATH_MSG_DEBUG("Warning: lbAverageLivefraction() - luminosity tools are not retrieved or turned on (i.e. EnableLumi = False)");
+        return -1.0;
     }
     return -0.0;
 }
@@ -1848,7 +1865,9 @@ livefractionPerBCID()
     if ( m_hasRetrievedLumiTool ) {
         return m_liveTool->livefractionPerBCID();
     } else {
-        ATH_MSG_FATAL("! Luminosity tool has been disabled ! livefractionPerBCID() can't work properly! ");
+        //ATH_MSG_FATAL("! Luminosity tool has been disabled ! livefractionPerBCID() can't work properly! ");
+        ATH_MSG_DEBUG("Warning: livefractionPerBCID() - luminosity tools are not retrieved or turned on (i.e. EnableLumi = False)");
+        return -1.0;
     }
     return -0.0;
 }
@@ -1861,7 +1880,9 @@ lbLumiWeight()
     if ( m_hasRetrievedLumiTool ) {
         return (lbAverageLuminosity()*lbDuration())*lbAverageLivefraction();
     } else{
-        ATH_MSG_FATAL("! Luminosity tool has been disabled ! lbLumiWeight() can't work properly! ");
+        //ATH_MSG_FATAL("! Luminosity tool has been disabled ! lbLumiWeight() can't work properly! ");
+        ATH_MSG_DEBUG("Warning: lbLumiWeight() - luminosity tools are not retrieved or turned on (i.e. EnableLumi = False)");
+        return -1.0;
     }
     return -0.0;
 }
@@ -1875,7 +1896,9 @@ lbDuration()
     if ( m_hasRetrievedLumiTool ) {
         return m_lumiTool->lbDuration();
     } else {
-        ATH_MSG_FATAL("! Luminosity tool has been disabled ! lbDuration() can't work properly! ");
+        //ATH_MSG_FATAL("! Luminosity tool has been disabled ! lbDuration() can't work properly! ");
+        ATH_MSG_DEBUG("Warning: lbDuration() - luminosity tools are not retrieved or turned on (i.e. EnableLumi = False)");
+        return -1.0;
     }
     return -0.0;
 }
@@ -2171,6 +2194,30 @@ parseList(const std::string& line, std::vector<std::string>& result) {
    return StatusCode::SUCCESS;
 }
 
+void
+ManagedMonitorToolBase::
+updateTriggersForGroups(std::vector<std::string>& vTrigChainNames) {
+  for (size_t i = 0; i < vTrigChainNames.size(); ++i) {
+    std::string& thisName = vTrigChainNames[i];
+    if (thisName.substr(0, 9) == "CATEGORY_") {
+      ATH_MSG_DEBUG("Found a trigger category: " << thisName << ". We will unpack it.");
+      std::vector<std::string> triggers = m_trigTranslator->translate(thisName.substr(9,std::string::npos));
+      std::ostringstream oss;
+      oss << "(";
+      for (size_t itrig = 0; itrig < triggers.size(); ++itrig) {
+	if (itrig != 0) { 
+	  oss << "|";
+	}
+	oss << triggers[itrig];
+      }
+      oss << ")";
+      // replace with new value
+      std::string newval = oss.str();
+      ATH_MSG_DEBUG("Replaced with " << newval);
+      vTrigChainNames[i] = newval;
+    }
+  }
+}
 
 ManagedMonitorToolBase::StreamNameFcn*
 ManagedMonitorToolBase::
diff --git a/Control/AthenaMonitoring/src/ManagedMonitorToolTest.cxx b/Control/AthenaMonitoring/src/ManagedMonitorToolTest.cxx
index f4e095d8eae9b752e732644e4ba59388a99ffbab..866cde61a70a42e7e1e6a6b70508394de338cb4a 100755
--- a/Control/AthenaMonitoring/src/ManagedMonitorToolTest.cxx
+++ b/Control/AthenaMonitoring/src/ManagedMonitorToolTest.cxx
@@ -48,6 +48,7 @@ ManagedMonitorToolTest( const std::string & type, const std::string & name,
    , m_managedHist_lumiBlock(0)
    , m_managedHist_eventsBlock(0)
    , m_managedHist_run(0)
+   , m_Lumi(0)
    , m_graph(0)
    , m_managedGraph(0)
    , m_ntuple(0)
@@ -179,9 +180,12 @@ bookHistograms( )
    m_managedHist2_lowStat = new TH1F ( "managedHist2_lowStat", "Managed Histogram, regHist Example 2; interval: lowStat", 5, 0.0, 5.0 );
 
    m_managedHist_lumiBlock  = new TH1F( "managedHist_lumiBlock", "Managed Histogram; interval: lumiBlock", 5, 0.0, 5.0 );
-   m_managedHist_eventsBlock  = new TH1F( "managedHist_eventsBlock", "Managed Histogram; interval: lumiBlock", 5, 0.0, 5.0 );
+   m_managedHist_eventsBlock  = new TH1F( "managedHist_eventsBlock", "Managed Histogram; interval: eventBlock", 5, 0.0, 5.0 );
    m_managedHist_run  = new TH1F( "managedHist0_run", "Managed Histogram; interval: run", 5, 0.0, 5.0 );
 
+   // Create luminosity histogram 
+   m_Lumi = new TH1F( "Avg_mu", "Average number of interactions", 100, 0, 100 );
+
    // Create MonGroup object for managing managed histograns from same group
    MonGroup managed_booking_lowStat( this, "Managed/Histograms", lowStat );   // to be re-booked every lowStat interval
 
@@ -202,6 +206,9 @@ bookHistograms( )
    MonGroup managed_eventsBlock(this, "Managed/Histograms", eventsBlock);    // to re-booked every eventsBlock
    regHist( m_managedHist_eventsBlock, managed_eventsBlock ).ignore();
 
+   // Register luminosity histogram
+   regHist( m_Lumi, managed_eventsBlock).ignore();
+
    MonGroup managed_booking_run( this, "Managed/Histograms", run);   // to be re-booked every run 
    regHist( m_managedHist_run, managed_booking_run ).ignore();
 
@@ -240,6 +247,15 @@ StatusCode
 ManagedMonitorToolTest::
 fillHistograms()
 {
+      // Fill average mu per bunch crossing
+      double lumiPerBCID = lbAverageInteractionsPerCrossing();
+      if (lumiPerBCID < 0) {
+          // no luminosity information or EnableLumi is set to False in the config
+          ATH_MSG_INFO("No luminosity information available or EnableLumi = False");
+      } else {
+         m_Lumi->Fill(lumiPerBCID);
+      }
+
    
       std::vector<TH1*>::const_iterator ensembleEnd = m_ensembles.end();
       for( std::vector<TH1*>::const_iterator i = m_ensembles.begin(); i != ensembleEnd; ++i ) {
diff --git a/Control/AthenaMonitoring/src/TriggerTranslatorSimple.cxx b/Control/AthenaMonitoring/src/TriggerTranslatorSimple.cxx
index 475bc92b7c5a141effd3f1a2fbad7a47982aad66..6559a93e215e38ccc2764238c5cac078689d3750 100644
--- a/Control/AthenaMonitoring/src/TriggerTranslatorSimple.cxx
+++ b/Control/AthenaMonitoring/src/TriggerTranslatorSimple.cxx
@@ -3,6 +3,8 @@
 */
 
 #include "AthenaMonitoring/TriggerTranslatorSimple.h"
+#include "boost/algorithm/string/split.hpp"
+#include "boost/algorithm/string/classification.hpp"
 
 TriggerTranslatorToolSimple::TriggerTranslatorToolSimple(const std::string& type,
 					     const std::string& name,
@@ -19,12 +21,15 @@ StatusCode TriggerTranslatorToolSimple::initialize() {
   std::vector<std::string> junk;
   //m_trigmap[""] = junk;
   for(const auto item : m_trigmap_property) {
-    std::cout << "Key " << item.first << " Value " << item.second << std::endl;
+    ATH_MSG_DEBUG( "Key " << item.first << " Value " << item.second << std::endl );
+    std::vector<std::string> triggers;
+    boost::split(triggers, item.second, boost::is_any_of(","));
+    m_trigmap[item.first] = triggers;
   }
   return StatusCode::SUCCESS;
 }
 
 
 const std::vector<std::string> TriggerTranslatorToolSimple::translate(const std::string& key) {
-  return m_trigmap[""];
+  return m_trigmap.at(key);
 }