diff --git a/apps/faultmanagement/fmcli/src/main/java/org/onosproject/faultmanagement/alarms/cli/GetAllAlarmsCounts.java b/apps/faultmanagement/fmcli/src/main/java/org/onosproject/faultmanagement/alarms/cli/GetAllAlarmsCounts.java
index a5413dc..9b95d70 100644
--- a/apps/faultmanagement/fmcli/src/main/java/org/onosproject/faultmanagement/alarms/cli/GetAllAlarmsCounts.java
+++ b/apps/faultmanagement/fmcli/src/main/java/org/onosproject/faultmanagement/alarms/cli/GetAllAlarmsCounts.java
@@ -15,6 +15,8 @@
  */
 package org.onosproject.faultmanagement.alarms.cli;
 
+import static java.util.Comparator.comparingInt;
+
 import org.apache.karaf.shell.commands.Argument;
 import org.apache.karaf.shell.commands.Command;
 import org.apache.karaf.shell.commands.Option;
@@ -66,9 +68,10 @@
     }
 
     void printCounts(Map<Alarm.SeverityLevel, Long> alarmCounts) {
-        alarmCounts.entrySet().forEach((countEntry) -> {
+        alarmCounts.entrySet().stream()
+            .sorted(comparingInt(e -> e.getKey().ordinal()))
+            .forEach((countEntry) -> {
             print(String.format("%s, %d", countEntry.getKey(), countEntry.getValue()));
-
         });
     }
 }
