diff --git a/core/modules/migrate_drupal/src/Plugin/migrate/source/ContentEntity.php b/core/modules/migrate_drupal/src/Plugin/migrate/source/ContentEntity.php
index 28f20a7bcb..591c2115c3 100644
--- a/core/modules/migrate_drupal/src/Plugin/migrate/source/ContentEntity.php
+++ b/core/modules/migrate_drupal/src/Plugin/migrate/source/ContentEntity.php
@@ -13,6 +13,7 @@
 use Drupal\migrate\Plugin\migrate\source\SourcePluginBase;
 use Drupal\migrate\Plugin\MigrateSourceInterface;
 use Drupal\migrate\Plugin\MigrationInterface;
+use Psr\Log\LoggerInterface;
 use Symfony\Component\DependencyInjection\ContainerInterface;
 
 /**
@@ -92,6 +93,13 @@ class ContentEntity extends SourcePluginBase implements ContainerFactoryPluginIn
    */
   protected $entityTypeBundleInfo;
 
+  /**
+   * A logger instance.
+   *
+   * @var \Psr\Log\LoggerInterface
+   */
+  protected $logger;
+
   /**
    * The entity type definition.
    *
@@ -113,13 +121,14 @@ class ContentEntity extends SourcePluginBase implements ContainerFactoryPluginIn
   /**
    * {@inheritdoc}
    */
-  public function __construct(array $configuration, $plugin_id, $plugin_definition, MigrationInterface $migration, EntityTypeManagerInterface $entity_type_manager, EntityFieldManagerInterface $entity_field_manager, EntityTypeBundleInfoInterface $entity_type_bundle_info) {
+  public function __construct(array $configuration, $plugin_id, $plugin_definition, MigrationInterface $migration, EntityTypeManagerInterface $entity_type_manager, EntityFieldManagerInterface $entity_field_manager, EntityTypeBundleInfoInterface $entity_type_bundle_info, LoggerInterface $logger) {
     if (empty($plugin_definition['entity_type'])) {
       throw new InvalidPluginDefinitionException($plugin_id, 'Missing required "entity_type" definition.');
     }
     $this->entityTypeManager = $entity_type_manager;
     $this->entityFieldManager = $entity_field_manager;
     $this->entityTypeBundleInfo = $entity_type_bundle_info;
+    $this->logger = $logger;
     $this->entityType = $this->entityTypeManager->getDefinition($plugin_definition['entity_type']);
     if (!$this->entityType instanceof ContentEntityTypeInterface) {
       throw new InvalidPluginDefinitionException($plugin_id, sprintf('The entity type (%s) is not supported. The "content_entity" source plugin only supports content entities.', $plugin_definition['entity_type']));
@@ -130,7 +139,10 @@ public function __construct(array $configuration, $plugin_id, $plugin_definition
       }
       $bundle_info = array_keys($this->entityTypeBundleInfo->getBundleInfo($this->entityType->id()));
       if (!in_array($configuration['bundle'], $bundle_info, TRUE)) {
-        throw new \InvalidArgumentException(sprintf('The provided bundle (%s) is not valid for the (%s) entity type.', $configuration['bundle'], $plugin_definition['entity_type']));
+        $this->logger->debug('The provided bundle (@bundle) is not valid for the (@entity_type) entity type.', [
+          '@bundle' => $configuration['bundle'],
+          '@entity_type' => $plugin_definition['entity_type'],
+        ]);
       }
     }
     parent::__construct($configuration + $this->defaultConfiguration, $plugin_id, $plugin_definition, $migration);
@@ -147,7 +159,8 @@ public static function create(ContainerInterface $container, array $configuratio
       $migration,
       $container->get('entity_type.manager'),
       $container->get('entity_field.manager'),
-      $container->get('entity_type.bundle.info')
+      $container->get('entity_type.bundle.info'),
+      $container->get('logger.factory')->get('migrate_drupal')
     );
   }
 
@@ -256,7 +269,7 @@ public function count($refresh = FALSE) {
    * {@inheritdoc}
    */
   protected function doCount() {
-    return $this->query()->count()->execute();
+    return (int) $this->query()->count()->execute();
   }
 
   /**
diff --git a/core/modules/migrate_drupal/tests/src/Kernel/Plugin/migrate/source/ContentEntityTest.php b/core/modules/migrate_drupal/tests/src/Kernel/Plugin/migrate/source/ContentEntityTest.php
index 43a72dae91..f9938804ad 100644
--- a/core/modules/migrate_drupal/tests/src/Kernel/Plugin/migrate/source/ContentEntityTest.php
+++ b/core/modules/migrate_drupal/tests/src/Kernel/Plugin/migrate/source/ContentEntityTest.php
@@ -224,19 +224,31 @@ public function testConstructorNotBundable() {
   }
 
   /**
-   * Tests the constructor for invalid entity bundle.
+   * Tests for non-existing entity bundle.
+   *
+   * @dataProvider providerNonExistingBundle
    */
-  public function testConstructorInvalidBundle() {
+  public function testNonExistingBundle(bool $include_translations, int $expected_row_count) {
     $migration = $this->prophesize(MigrationInterface::class)->reveal();
     $configuration = [
+      'include_translations' => $include_translations,
       'bundle' => 'foo',
     ];
     $plugin_definition = [
       'entity_type' => 'node',
     ];
-    $this->expectException(\InvalidArgumentException::class);
-    $this->expectExceptionMessage('The provided bundle (foo) is not valid for the (node) entity type.');
-    ContentEntity::create($this->container, $configuration, 'content_entity:node', $plugin_definition, $migration);
+    $content_entity = ContentEntity::create($this->container, $configuration, 'content_entity:node', $plugin_definition, $migration);
+    $this->assertSame($expected_row_count, $content_entity->count());
+  }
+
+  /**
+   * Provides data to test self::testNonExistingBundle().
+   */
+  public function providerNonExistingBundle(): array {
+    return [
+      'including translations' => [TRUE, -1],
+      'excluding translations' => [FALSE, 0],
+    ];
   }
 
   /**
