diff --git a/src/Plugin/monitoring/SensorPlugin/CommerceTurnoverSensorPlugin.php b/src/Plugin/monitoring/SensorPlugin/CommerceTurnoverSensorPlugin.php
index cb7ac02..6648a3d 100644
--- a/src/Plugin/monitoring/SensorPlugin/CommerceTurnoverSensorPlugin.php
+++ b/src/Plugin/monitoring/SensorPlugin/CommerceTurnoverSensorPlugin.php
@@ -24,7 +24,7 @@ use Drupal\monitoring\Result\SensorResultInterface;
  * )
  *
  */
-class CommerceTurnoverSensorPlugin extends EntityAggregatorSensorPlugin {
+class CommerceTurnoverSensorPlugin extends ContentEntityAggregatorSensorPlugin {
 
   /**
    * {@inheritdoc}
diff --git a/src/Plugin/monitoring/SensorPlugin/EntityAggregatorSensorPlugin.php b/src/Plugin/monitoring/SensorPlugin/ContentEntityAggregatorSensorPlugin.php
similarity index 91%
rename from src/Plugin/monitoring/SensorPlugin/EntityAggregatorSensorPlugin.php
rename to src/Plugin/monitoring/SensorPlugin/ContentEntityAggregatorSensorPlugin.php
index 73c9b4e..7eca020 100644
--- a/src/Plugin/monitoring/SensorPlugin/EntityAggregatorSensorPlugin.php
+++ b/src/Plugin/monitoring/SensorPlugin/ContentEntityAggregatorSensorPlugin.php
@@ -1,7 +1,7 @@
 <?php
 /**
  * @file
- * Contains \Drupal\monitoring\Plugin\monitoring\SensorPlugin\EntityAggregatorSensorPlugin.
+ * Contains \Drupal\monitoring\Plugin\monitoring\SensorPlugin\ContentEntityAggregatorSensorPlugin.
  */
 
 namespace Drupal\monitoring\Plugin\monitoring\SensorPlugin;
@@ -11,6 +11,7 @@ use Drupal\Core\DependencyInjection\DependencySerializationTrait;
 use Drupal\Core\Entity\DependencyTrait;
 use Drupal\Core\Entity\Entity;
 use Drupal\Core\Entity\EntityManagerInterface;
+use Drupal\Core\Entity\FieldableEntityInterface;
 use Drupal\Core\Entity\Query\QueryAggregateInterface;
 use Drupal\Core\Entity\Query\QueryFactory;
 use Drupal\Core\Form\FormStateInterface;
@@ -22,18 +23,18 @@ use Drupal\monitoring\SensorPlugin\ExtendedInfoSensorPluginInterface;
 use Symfony\Component\DependencyInjection\ContainerInterface;
 
 /**
- * Entity database aggregator.
+ * Content entity database aggregator.
  *
  * It utilises the entity query aggregate functionality.
  *
  * @SensorPlugin(
  *   id = "entity_aggregator",
- *   label = @Translation("Entity Aggregator"),
+ *   label = @Translation("Content Entity Aggregator"),
  *   description = @Translation("Utilises the entity query aggregate functionality."),
  *   addable = TRUE
  * )
  */
-class EntityAggregatorSensorPlugin extends DatabaseAggregatorSensorPluginBase implements ExtendedInfoSensorPluginInterface {
+class ContentEntityAggregatorSensorPlugin extends DatabaseAggregatorSensorPluginBase implements ExtendedInfoSensorPluginInterface {
 
   use DependencySerializationTrait;
   use DependencyTrait;
@@ -201,9 +202,9 @@ class EntityAggregatorSensorPlugin extends DatabaseAggregatorSensorPluginBase im
     // );
 
     // Load entities.
-    $entity_type = $this->getEntityTypeId();
+    $entity_type_id = $this->getEntityTypeId();
     $entities = $this->entityManager
-      ->getStorage($entity_type)
+      ->getStorage($entity_type_id)
       ->loadMultiple($entity_ids);
 
     // Get the fields to display from the settings.
@@ -211,6 +212,7 @@ class EntityAggregatorSensorPlugin extends DatabaseAggregatorSensorPluginBase im
 
     // Render entities.
     $rows = [];
+    /* @var \Drupal\Core\Entity\FieldableEntityInterface $entity */
     foreach ($entities as $id => $entity) {
       $row = [];
       foreach ($fields as $field) {
@@ -242,9 +244,14 @@ class EntityAggregatorSensorPlugin extends DatabaseAggregatorSensorPluginBase im
             break;
 
           default:
-            $property = $entity->getFieldDefinition($field)->getFieldStorageDefinition()->getMainPropertyName();
-            $value = $entity->$field->view(['label' => 'hidden']);
-            $row[] = $value ? \Drupal::service('renderer')->renderPlain($value) : $entity->$field->$property;
+            if ($entity->hasField($field)) {
+              $property = $entity->getFieldDefinition($field)->getFieldStorageDefinition()->getMainPropertyName();
+              $value = $entity->$field->view(['label' => 'hidden']);
+              $row[] = $value ? \Drupal::service('renderer')->renderPlain($value) : $entity->$field->$property;
+            }
+            else {
+              $row[] = t('invalid field');
+            }
             break;
         }
       }
@@ -255,7 +262,7 @@ class EntityAggregatorSensorPlugin extends DatabaseAggregatorSensorPluginBase im
       );
     }
     if (count($rows) > 0) {
-      $header = $this->sensorConfig->getSetting('verbose_fields');
+      $header = $this->sensorConfig->getSetting('verbose_fields', ['ID, Label']);
       $output['entities'] = array(
         '#type' => 'table',
         '#header' => $header,
@@ -291,12 +298,20 @@ class EntityAggregatorSensorPlugin extends DatabaseAggregatorSensorPluginBase im
   public function buildConfigurationForm(array $form, FormStateInterface $form_state) {
     $form = parent::buildConfigurationForm($form, $form_state);
     $settings = $this->sensorConfig->getSettings();
+    $entity_types = $this->entityManager->getEntityTypeLabels();
+    $options = [];
+    foreach (array_keys($entity_types) as $delta => $type) {
+      $class = $this->entityManager->getDefinition($type)->getClass();
+      if (is_subclass_of($class, '\Drupal\Core\Entity\FieldableEntityInterface', TRUE)) {
+        $options[array_keys($entity_types)[$delta]] = array_values($entity_types)[$delta];
+      };
+    }
 
     $form['entity_type'] = array(
       '#type' => 'select',
-      '#default_value' => $this->getEntityTypeId(),
+      '#default_value' => $this->sensorConfig->getSetting('entity_type', 'node'),
       '#maxlength' => 255,
-      '#options' => $this->entityManager->getEntityTypeLabels(),
+      '#options' => $options,
       '#title' => t('Entity Type'),
     );
     if (!isset($settings['entity_type'])) {
@@ -416,8 +431,8 @@ class EntityAggregatorSensorPlugin extends DatabaseAggregatorSensorPluginBase im
     $entity_type = $this->entityManager->getDefinition($this->getEntityTypeId());
     $form['verbose_fields']['available_fields'] = [
       '#markup' => t('Available Fields for entity %type: <b>%fields</b>', [
-          '%type' => $entity_type->getLabel(),
-          '%fields' => implode(', ', array_keys($this->entityManager->getBaseFieldDefinitions($this->getEntityTypeId())))
+        '%type' => $entity_type->getLabel(),
+        '%fields' => implode(', ', array_keys($this->entityManager->getBaseFieldDefinitions($this->getEntityTypeId())))
         ]
       ),
     ];
diff --git a/src/Plugin/monitoring/SensorPlugin/PaymentTurnoverSensorPlugin.php b/src/Plugin/monitoring/SensorPlugin/PaymentTurnoverSensorPlugin.php
index e491751..fd52ad2 100644
--- a/src/Plugin/monitoring/SensorPlugin/PaymentTurnoverSensorPlugin.php
+++ b/src/Plugin/monitoring/SensorPlugin/PaymentTurnoverSensorPlugin.php
@@ -23,7 +23,7 @@ use Drupal\payment\Entity\Payment;
  *   addable = TRUE
  * )
  */
-class PaymentTurnoverSensorPlugin extends EntityAggregatorSensorPlugin {
+class PaymentTurnoverSensorPlugin extends ContentEntityAggregatorSensorPlugin {
 
   /**
    * {@inheritdoc}
diff --git a/src/Tests/MonitoringCoreWebTest.php b/src/Tests/MonitoringCoreWebTest.php
index a74f6ff..921d9d0 100644
--- a/src/Tests/MonitoringCoreWebTest.php
+++ b/src/Tests/MonitoringCoreWebTest.php
@@ -296,7 +296,7 @@ class MonitoringCoreWebTest extends MonitoringTestBase {
   /**
    * Tests the entity aggregator.
    *
-   * @see EntityAggregatorSensorPlugin
+   * @see ContentEntityAggregatorSensorPlugin
    */
   public function testEntityAggregator() {
     // Create content types and nodes.
diff --git a/src/Tests/MonitoringUITest.php b/src/Tests/MonitoringUITest.php
index 1bc966c..0019308 100644
--- a/src/Tests/MonitoringUITest.php
+++ b/src/Tests/MonitoringUITest.php
@@ -183,8 +183,6 @@ class MonitoringUITest extends MonitoringTestBase {
    * Tests the entity aggregator sensors.
    *
    * Tests the entity aggregator with time interval settings and verbosity.
-   *
-   * @todo add tests for DB aggregator.
    */
   public function testAggregateSensorTimeIntervalConfig() {
     $account = $this->drupalCreateUser(array('administer monitoring', 'monitoring reports', 'monitoring reports'));
