diff --git a/vendor/magento/module-analytics/Model/Config/Backend/Baseurl/SubscriptionUpdateHandler.php b/vendor/magento/module-analytics/Model/Config/Backend/Baseurl/SubscriptionUpdateHandler.php
index 6e6f008d49f7e..ecd1c07dcb963 100644
--- a/vendor/magento/module-analytics/Model/Config/Backend/Baseurl/SubscriptionUpdateHandler.php
+++ b/vendor/magento/module-analytics/Model/Config/Backend/Baseurl/SubscriptionUpdateHandler.php
@@ -24,7 +24,7 @@ class SubscriptionUpdateHandler
/**
* Config path for schedule setting of update handler.
*/
- const UPDATE_CRON_STRING_PATH = "crontab/default/jobs/analytics_update/schedule/cron_expr";
+ public const UPDATE_CRON_STRING_PATH = "crontab/analytics/jobs/analytics_update/schedule/cron_expr";
/**
* Flag code for the previous Base URL.
diff --git a/vendor/magento/module-analytics/Model/Config/Backend/CollectionTime.php b/vendor/magento/module-analytics/Model/Config/Backend/CollectionTime.php
index 20e86db4c20a0..a5ab00b9c6190 100644
--- a/vendor/magento/module-analytics/Model/Config/Backend/CollectionTime.php
+++ b/vendor/magento/module-analytics/Model/Config/Backend/CollectionTime.php
@@ -23,7 +23,7 @@ class CollectionTime extends Value
/**
* The path to config setting of schedule of collection data cron.
*/
- public const CRON_SCHEDULE_PATH = 'crontab/default/jobs/analytics_collect_data/schedule/cron_expr';
+ public const CRON_SCHEDULE_PATH = 'crontab/analytics/jobs/analytics_collect_data/schedule/cron_expr';
/**
* @var WriterInterface
diff --git a/vendor/magento/module-analytics/Model/Config/Backend/Enabled/SubscriptionHandler.php b/vendor/magento/module-analytics/Model/Config/Backend/Enabled/SubscriptionHandler.php
index 4b125949948c6..6c4aef1c354c2 100644
--- a/vendor/magento/module-analytics/Model/Config/Backend/Enabled/SubscriptionHandler.php
+++ b/vendor/magento/module-analytics/Model/Config/Backend/Enabled/SubscriptionHandler.php
@@ -24,7 +24,7 @@ class SubscriptionHandler
/**
* Config path for schedule setting of subscription handler.
*/
- const CRON_STRING_PATH = 'crontab/default/jobs/analytics_subscribe/schedule/cron_expr';
+ public const CRON_STRING_PATH = 'crontab/analytics/jobs/analytics_subscribe/schedule/cron_expr';
/**
* Config value for schedule setting of subscription handler.
diff --git a/vendor/magento/module-analytics/Setup/Patch/Data/MoveCronConfigToAnalyticsGroup.php b/vendor/magento/module-analytics/Setup/Patch/Data/MoveCronConfigToAnalyticsGroup.php
new file mode 100644
index 0000000000000..bb539f07079d6
--- /dev/null
+++ b/vendor/magento/module-analytics/Setup/Patch/Data/MoveCronConfigToAnalyticsGroup.php
@@ -0,0 +1,76 @@
+resourceConnection = $resourceConnection;
+ }
+
+ /**
+ * @inheritDoc
+ */
+ public function apply()
+ {
+ $connection = $this->resourceConnection->getConnection();
+ $table = $this->resourceConnection->getTableName('core_config_data');
+
+ // Find all analytics cron rows under the "default" cron group
+ $select = $connection->select()
+ ->from($table, ['config_id', 'scope', 'scope_id', 'path', 'value'])
+ ->where('path LIKE ?', 'crontab/default/jobs/analytics_%');
+ $rows = (array)$connection->fetchAll($select);
+
+ foreach ($rows as $row) {
+ $oldPath = (string)$row['path'];
+ $newPath = (string)preg_replace('#^crontab/default/#', 'crontab/analytics/', $oldPath);
+
+ $connection->update(
+ $table,
+ ['path' => $newPath],
+ ['config_id = ?' => (int)$row['config_id']]
+ );
+ }
+
+ return $this;
+ }
+
+ /**
+ * @inheritDoc
+ */
+ public static function getDependencies()
+ {
+ return [];
+ }
+
+ /**
+ * @inheritDoc
+ */
+ public function getAliases()
+ {
+ return [];
+ }
+}
diff --git a/vendor/magento/module-analytics/etc/cron_groups.xml b/vendor/magento/module-analytics/etc/cron_groups.xml
new file mode 100644
index 0000000000000..897df713dcf01
--- /dev/null
+++ b/vendor/magento/module-analytics/etc/cron_groups.xml
@@ -0,0 +1,18 @@
+
+
+
+
+ 15
+ 20
+ 15
+ 10
+ 60
+ 4320
+ 1
+
+
diff --git a/vendor/magento/module-analytics/etc/crontab.xml b/vendor/magento/module-analytics/etc/crontab.xml
index a4beef0359540..8556a8f579e35 100644
--- a/vendor/magento/module-analytics/etc/crontab.xml
+++ b/vendor/magento/module-analytics/etc/crontab.xml
@@ -6,7 +6,7 @@
*/
-->
-
+
diff --git a/vendor/magento/module-analytics/etc/di.xml b/vendor/magento/module-analytics/etc/di.xml
index 3615bd9ca2d32..6ba1d74d2a011 100644
--- a/vendor/magento/module-analytics/etc/di.xml
+++ b/vendor/magento/module-analytics/etc/di.xml
@@ -260,9 +260,9 @@
- 1
- - 1
- - 1
- - 1
+ - 1
+ - 1
+ - 1