From 5504ffb3d719dbf2413ead7178d6b905031d8aae Mon Sep 17 00:00:00 2001 From: forstisabella <92472883+forstisabella@users.noreply.github.com> Date: Thu, 8 Aug 2024 14:14:24 -0400 Subject: [PATCH 1/4] DO for storage --- src/_includes/content/storage-do-include.md | 4 ++ src/connections/delivery-overview.md | 53 +++++++++++++----- ...delivery-overview-storage-destinations.png | Bin 0 -> 111913 bytes .../storage/catalog/aws-s3/index.md | 4 +- .../storage/catalog/azuresqldw/index.md | 2 + .../storage/catalog/bigquery/index.md | 2 + .../storage/catalog/databricks/index.md | 1 + src/connections/storage/catalog/db2/index.md | 4 +- .../catalog/google-cloud-storage/index.md | 4 +- .../storage/catalog/postgres/index.md | 4 +- .../storage/catalog/redshift/index.md | 2 + .../storage/catalog/snowflake/index.md | 2 + 12 files changed, 63 insertions(+), 19 deletions(-) create mode 100644 src/_includes/content/storage-do-include.md create mode 100644 src/connections/images/delivery-overview-storage-destinations.png diff --git a/src/_includes/content/storage-do-include.md b/src/_includes/content/storage-do-include.md new file mode 100644 index 0000000000..bcd47d3812 --- /dev/null +++ b/src/_includes/content/storage-do-include.md @@ -0,0 +1,4 @@ +{% capture title %}{{page.title}}{% endcapture %} +{% capture name %}{{page.title | replace: 'Destination', ''}}{% endcapture %} + +

View observability metrics about your {{title}} with Delivery Overview

Delivery Overview, Segment's built-in observability tool, is now in public beta for storage destinations. For more information, see the [Delivery Overview](/docs/connections/delivery-overview/) documentation.

\ No newline at end of file diff --git a/src/connections/delivery-overview.md b/src/connections/delivery-overview.md index 2cd1501545..1bd7b56aa9 100644 --- a/src/connections/delivery-overview.md +++ b/src/connections/delivery-overview.md @@ -4,10 +4,10 @@ title: Delivery Overview Delivery Overview is a visual observability tool designed to help Segment users diagnose event delivery issues for any cloud-streaming destination receiving events from cloud-streaming sources. -> info "Delivery Overview for RETL destinations, Storage destinations, and Engage Audience Syncs currently in development" -> This means that Segment is actively developing Delivery Overview features for RETL destinations, Storage destinations, and Engage Audience syncs. Some functionality may change before Delivery Overview for these integrations becomes generally available. +> info "Delivery Overview for RETL destinations and Engage Audience Syncs currently in development" +> This means that Segment is actively developing Delivery Overview features for RETL destinations and Engage Audience syncs. Some functionality may change before Delivery Overview for these integrations becomes generally available. > -> Delivery Overview is generally available for streaming connections (cloud-streaming sources and cloud-streaming destinations). +> Delivery Overview is generally available for streaming connections (cloud-streaming sources and cloud-streaming destinations) and in public beta for storage destinations. Some metrics specific to storage destinations, like selective syncs, failed row counts, and total rows seen, are not yet available. > All users of Delivery Overview have access to the Event Delivery tab, and can configure delivery alerts for their destinations. ## Key features @@ -20,25 +20,50 @@ Delivery Overview has three core features: You can refine these tables using the time picker and the metric toggle, located under the destination header. With the time picker, you can specify a time period (last 10 minutes, 1 hour, 24 hours, 7 days, 2 weeks, or a custom date range over the last two weeks) for which you'd like to see data. With the metric toggle, you can switch between seeing metrics represented as percentages (for example, *85% of events* or *a 133% increase in events*) or as counts (*13 events* or *an increase of 145 events*.) Delivery Overview shows percentages by default. ### Pipeline view -The pipeline view provides insights into each step your data is processed by enroute to the destination, with an emphasis on the steps where data can be discarded due to errors or your filter preferences. Each step provides details into counts, change rates, and event details (like the associated Event Type or Event Names), and the discard steps (Failed on ingest, Filtered at source, Filtered at destination, & Failed delivery) provide you with the reasons events were dropped before reaching the destination. Discard steps also include how to control or alter that outcome, when possible. The pipeline view also shows a label between the Filtered at destination and Failed delivery steps indicating how many events are currently pending retry. +The pipeline view provides insights into each step your data is processed by enroute to the destination, with an emphasis on the steps where data can be discarded due to errors or your filter preferences. Each step provides details into counts, change rates, and event details (like the associated Event Type or Event Names), and the discard steps (Failed on ingest, Filtered at source, Filtered at destination, & Failed delivery) provide you with the reasons events were dropped before reaching the destination. Discard steps also include how to control or alter that outcome, when possible. The pipeline view also includes a label between the Filtered at destination and Failed delivery steps indicating how many events are currently pending retry. -The pipeline view shows the following steps: - -- **Successfully received**: Events that Segment ingested from your source -- **Failed on ingest**: Events that Segment received, but were dropped due to internal data validation rules -- **Filtered at source**: Events that were discarded due to schema settings or [Protocols](/docs/protocols/) Tracking Plans +#### Classic destinations +The pipeline view for classic destinations includes the following steps: +- **Successfully received**: Events that Segment ingested from your source. +- **Failed on ingest**: Events that Segment received, but were dropped due to internal data validation rules. +- **Filtered at source**: Events that were discarded due to schema settings or [Protocols](/docs/protocols/) Tracking Plans. +- **Filtered at destination**: Events that were discarded due to [Destination Filters](/docs/guides/filtering-data/#destination-filters), [filtering in the Integrations object](/docs/guides/filtering-data/#filtering-with-the-integrations-object), [Destination Insert functions](/docs/connections/functions/insert-functions/), or [per source schema integration filters](/docs/guides/filtering-data/#per-source-schema-integrations-filters). [Actions destinations](/docs/connections/destinations/actions/) also have a filtering capability: for example, if your Action is set to only send Identify events, all other event types will be filtered out. Actions destinations with incomplete triggers or disabled mappings are filtered out at this step. [Consent Management](/docs/privacy/consent-management/) users also see events discarded due to consent preferences. +- **Failed delivery**: Events that have been discarded due to errors or unmet destination requirements. +- **Successful delivery**: Events that were successfully delivered to the destination. + +#### Actions destinations +The pipeline view for Actions destination includes the following steps: +- **Successfully received**: Events that Segment ingested from your source. +- **Failed on ingest**: Events that Segment received, but were dropped due to internal data validation rules. +- **Filtered at source**: Events that were discarded due to schema settings or [Protocols](/docs/protocols/) Tracking Plans. +- **Mapping dropdown**: Select a [mapping](/docs/connections/destinations/actions/#customize-mappings) to filter the events in the Filtered at destination, Failed delivery and Successful delivery pipeline steps. - **Filtered at destination**: Events that were discarded due to [Destination Filters](/docs/guides/filtering-data/#destination-filters), [filtering in the Integrations object](/docs/guides/filtering-data/#filtering-with-the-integrations-object), [Destination Insert functions](/docs/connections/functions/insert-functions/), or [per source schema integration filters](/docs/guides/filtering-data/#per-source-schema-integrations-filters). [Actions destinations](/docs/connections/destinations/actions/) also have a filtering capability: for example, if your Action is set to only send Identify events, all other event types will be filtered out. Actions destinations with incomplete triggers or disabled mappings are filtered out at this step. [Consent Management](/docs/privacy/consent-management/) users also see events discarded due to consent preferences. -- **Failed delivery**: Events that have been discarded due to errors or unmet destination requirements -- **Successful delivery**: Events that were successfully delivered to the destination +- **Retry count**: The number of events currently pending retry. +- **Failed delivery**: Events that have been discarded due to errors or unmet destination requirements. +- **Successful delivery**: Events that were successfully delivered to the destination. -Actions destinations also include a mapping dropdown, which allows you to select a [mapping](/docs/connections/destinations/actions/#customize-mappings) to filter the events in the Filtered at destination, Failed delivery and Successful delivery pipeline steps. The following image shows an Actions destination filtered to include only Track Page View events in the last three pipeline steps: +The following image shows an Actions destination filtered to include only Track Page View events in the last three pipeline steps: ![A screenshot of the Delivery Overview tab for an Actions destination, with the Track Page View mapping selected.](images/delivery-overview-actions-destination.jpeg) +#### Storage destinations +The pipeline view for storage destination includes the following steps: +- **Successfully received**: Events that Segment ingested from your source. +- **Failed on ingest**: Events that Segment received, but were dropped due to internal data validation rules. +- **Filtered at source**: Events that were discarded due to schema settings or [Protocols](/docs/protocols/) Tracking Plans. +- **Filtered at destination**: Events that were discarded due to [Destination Filters](/docs/guides/filtering-data/#destination-filters), [filtering in the Integrations object](/docs/guides/filtering-data/#filtering-with-the-integrations-object), [Destination Insert functions](/docs/connections/functions/insert-functions/), or [per source schema integration filters](/docs/guides/filtering-data/#per-source-schema-integrations-filters). [Actions destinations](/docs/connections/destinations/actions/) also have a filtering capability: for example, if your Action is set to only send Identify events, all other event types will be filtered out. Actions destinations with incomplete triggers or disabled mappings are filtered out at this step. [Consent Management](/docs/privacy/consent-management/) users also see events discarded due to consent preferences. +- **Events to warehouse rows**: A read-only box that shows the point in the delivery process where Segment converts events into warehouse rows. +- **Failed to sync**: Syncs that either failed to sync or were partially successful. Selecting this step takes you to a table of all syncs with one or more failed collections. Select a sync from the table to view the discard reason, any collections that failed, the status, and the number of rows that synced for each collection. +- **Successfully synced**: Events that were successfully synced with your storage destination. + +The following image shows a storage destination with 23 partially successful syncs: + +![A screenshot of the Delivery Overview tab for a Storage destination, with the Failed to sync step selected and a table of partially successful syncs.](images/delivery-overview-storage-destinations.png) + ### Breakdown table The breakdown table provides you with greater detail about the selected events. -To open the breakdown table, select either the first step in the pipeline view (Successfully received,) the last step in the pipeline view (Successful delivery,) or select a discard step and then click on a discard reason. +To open the breakdown table, select either the first step in the pipeline view, the last step in the pipeline view, or select a discard step and then click on a discard reason. The breakdown table displays the following details: - **Event type**: The Segment spec event type (Track call vs. Identify call, for example) @@ -96,7 +121,7 @@ You can use the Event Delivery alerting features (Delivery Alerts) by selecting Note that this is dependent on your [notification settings](/docs/segment-app/#segment-settings). For example, if the threshold is set to 99%, then you'll be notified each time less than 100% of events fail. -You can also use Connections Alerting, a feature that allows Segment users to receive in-app, email, and Slack notifications related to the performance and throughput of an event-streaming connection. +You can also use [Connections Alerting](/docs/connections/alerting), a feature that allows Segment users to receive in-app, email, and Slack notifications related to the performance and throughput of an event-streaming connection. Connections Alerting allows you to create two different alerts: - **Source volume alerts**: These alerts notify you if your source ingests an abnormally small or large amount of data. For example, if you set a change percentage of 4%, you would be notified when your source ingests less than 96% or more than 104% of the typical event volume. diff --git a/src/connections/images/delivery-overview-storage-destinations.png b/src/connections/images/delivery-overview-storage-destinations.png new file mode 100644 index 0000000000000000000000000000000000000000..049ee1793c9009a299b436e21fb527bd50751a0c GIT binary patch literal 111913 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 Per{;#UoHB@F8Kcd;|)qJ literal 0 HcmV?d00001 diff --git a/src/connections/storage/catalog/aws-s3/index.md b/src/connections/storage/catalog/aws-s3/index.md index f46831c960..8e9d708a2b 100644 --- a/src/connections/storage/catalog/aws-s3/index.md +++ b/src/connections/storage/catalog/aws-s3/index.md @@ -11,7 +11,7 @@ The AWS S3 destination provides a more secure method of connecting to your S3 bu Functionally, the two destinations (Amazon S3 and AWS S3 with IAM Role Support) copy data in a similar manner. -## Getting Started +## Getting started The AWS S3 destination puts the raw logs of the data Segment receives into your S3 bucket, encrypted, no matter what region the bucket is in. @@ -19,6 +19,8 @@ AWS S3 works differently than most destinations. Using a destinations selector l The Segment Tracking API processes data from your sources and collects the Events in batches. Segment then uploads the batches to a secure Segment S3 bucket, from which they're securely copied to your own S3 bucket in small bursts. Individual files won't exceed 100 MB in size. +{% include content/storage-do-include.md %} + {% comment %} ![Diagram showing how data is transferred from Segment Tracking API to a customer's AWS S3 bucket.](images/s3processdiagram.png) diff --git a/src/connections/storage/catalog/azuresqldw/index.md b/src/connections/storage/catalog/azuresqldw/index.md index ce42d1fe01..3872c901ac 100644 --- a/src/connections/storage/catalog/azuresqldw/index.md +++ b/src/connections/storage/catalog/azuresqldw/index.md @@ -9,6 +9,8 @@ redirect_from: Azure's [Azure Synapse Analytics](https://azure.microsoft.com/en-us/services/synapse-analytics/){:target="_blank"}, previously known as Azure SQL Data Warehouse, is a limitless analytics service that brings together enterprise data warehousing and Big Data analytics. +{% include content/storage-do-include.md %} + ## Getting Started Complete the following prerequisites in Microsoft Azure before connecting your Azure Synapse Analytics databases to Segment: diff --git a/src/connections/storage/catalog/bigquery/index.md b/src/connections/storage/catalog/bigquery/index.md index 278cefb493..a17a1c1d40 100644 --- a/src/connections/storage/catalog/bigquery/index.md +++ b/src/connections/storage/catalog/bigquery/index.md @@ -13,6 +13,8 @@ Google AdWords into a BigQuery data warehouse. When you integrate BigQuery with The Segment warehouse connector runs a periodic ETL (Extract - Transform - Load) process to pull raw events and objects from your sources and load them into your BigQuery cluster. For more information about the ETL process, including how it works and common ETL use cases, refer to [Google Cloud's ETL documentation](https://cloud.google.com/learn/what-is-etl){:target="_blank"}. +{% include content/storage-do-include.md %} + ## Getting Started To store your Segment data in BigQuery, complete the following steps: diff --git a/src/connections/storage/catalog/databricks/index.md b/src/connections/storage/catalog/databricks/index.md index c447425b0e..95e845e87e 100644 --- a/src/connections/storage/catalog/databricks/index.md +++ b/src/connections/storage/catalog/databricks/index.md @@ -90,3 +90,4 @@ Segment uses the service principal to access your Databricks workspace and assoc Once connected, you'll see a confirmation screen with next steps and more info on using your warehouse. +{% include content/storage-do-include.md %} \ No newline at end of file diff --git a/src/connections/storage/catalog/db2/index.md b/src/connections/storage/catalog/db2/index.md index a1bc48407b..e22c3a5198 100644 --- a/src/connections/storage/catalog/db2/index.md +++ b/src/connections/storage/catalog/db2/index.md @@ -11,7 +11,7 @@ all of your event and Cloud Source data in a warehouse built by IBM. This guide will walk through what you need to know to get up and running with Db2 Warehouse and Segment. -> note " " +> info " " > This document refers specifically to [IBM Db2 Warehouse on Cloud](https://www.ibm.com/cloud/db2-warehouse-on-cloud){:target="_blank"}, [IBM Db2 Warehouse](https://www.ibm.com/analytics/db2){:target="_blank"}, and the [IBM Integrated Analytics System](https://www.ibm.com/products/integrated-analytics-system){:target="_blank"}. For questions related to any of these products, see the [IBM Cloud Docs](https://cloud.ibm.com/docs){:target="_blank"}. ## Getting Started @@ -21,6 +21,8 @@ To get started, you'll need to: 2. [Grant the user sufficient permissions](#grant-the-segment-user-permissions). 3. [Create the the IBM Db2 Destination in the Segment app](#create-segment-db2-destination). +{% include content/storage-do-include.md %} + ### Create a User for Segment In order to connect your IBM Db2 warehouse to Segment, you need to create a Db2 user account that Segment can assume. To create a user account for Segment: diff --git a/src/connections/storage/catalog/google-cloud-storage/index.md b/src/connections/storage/catalog/google-cloud-storage/index.md index f5256204eb..755a1db7ee 100644 --- a/src/connections/storage/catalog/google-cloud-storage/index.md +++ b/src/connections/storage/catalog/google-cloud-storage/index.md @@ -4,8 +4,6 @@ integration-type: destination redirect_from: '/connections/destinations/catalog/google-cloud-storage/' --- - - The Google Cloud Storage (GCS) destination puts the raw logs of the data Segment receives into your GCS bucket. The data is copied into your bucket at least every hour. You might see multiple files over a period of time depending on how much data is copied. > warning "" @@ -20,6 +18,8 @@ The Google Cloud Storage (GCS) destination puts the raw logs of the data Segment 1. Create a Service Account to allow Segment to copy files into the bucket 2. Create a bucket in your preferred region. +{% include content/storage-do-include.md %} + ## Set up Service Account to give Segment access to upload to your Bucket diff --git a/src/connections/storage/catalog/postgres/index.md b/src/connections/storage/catalog/postgres/index.md index 5456997d29..d1844ae0d4 100644 --- a/src/connections/storage/catalog/postgres/index.md +++ b/src/connections/storage/catalog/postgres/index.md @@ -11,7 +11,7 @@ PostgreSQL, or Postgres, is an object-relational database management system (ORD PostgreSQL is ACID-compliant and transactional. PostgreSQL has updatable views and materialized views, triggers, foreign keys; supports functions and stored procedures, and other expandability. Developed by the PostgreSQL Global Development Group, free and open-source. -> note "Segment sources required" +> info "Segment sources required" > In order to add a Postgres destination to Segment, you must first add a source. To learn more about sources in Segment, check out the [Sources Overview](/docs/connections/sources) documentation. ## Getting started @@ -19,6 +19,8 @@ Segment supports the following Postgres database providers: - [Heroku](#heroku-postgres) - [RDS](#rds-postgres) +{% include content/storage-do-include.md %} + Segment supported a third Postgres provider, Compose, until Compose was [was deprecated on March 1, 2023](https://help.compose.com/docs/compose-deprecation){:target="_blank"}. To continue sending your Segment data to a Postgres destination, consider using either [Heroku Postgres](#heroku-postgres) or [Amazon's Relational Database Service](#rds-postgres). > warning "" diff --git a/src/connections/storage/catalog/redshift/index.md b/src/connections/storage/catalog/redshift/index.md index 926fcf3a43..f0c81b1268 100644 --- a/src/connections/storage/catalog/redshift/index.md +++ b/src/connections/storage/catalog/redshift/index.md @@ -17,6 +17,8 @@ Complete the following steps to provision your Redshift cluster, and connect Seg 3. [Create a database user](#create-a-database-user) 4. [Connect Redshift to Segment](#connect-redshift-to-segment) +{% include content/storage-do-include.md %} + ## Choose the best instance for your needs While the number of events (database records) are important, the storage capacity usage of your cluster depends primarily on the number of unique tables and columns created in the cluster. Keep in mind that each unique `.track()` event creates a new table, and each property sent creates a new column in that table. To avoid storing unnecessary data, start with a detailed [tracking plan](/docs/protocols/tracking-plan/create/) before you install Segment libraries to ensure that only the necessary events are passed to Segment. diff --git a/src/connections/storage/catalog/snowflake/index.md b/src/connections/storage/catalog/snowflake/index.md index e748aea408..f9b341fcc8 100644 --- a/src/connections/storage/catalog/snowflake/index.md +++ b/src/connections/storage/catalog/snowflake/index.md @@ -23,6 +23,8 @@ There are six steps to get started using Snowflake with Segment. 5. [Test the user and credentials](#step-5-test-the-user-and-credentials) 6. [Connect Snowflake to Segment](#step-6-connect-snowflake-to-segment) +{% include content/storage-do-include.md %} + ### Prerequisites To set up the virtual warehouse, database, role, and user in Snowflake for Segment's Snowflake destination, you must have the `ACCOUNTADMIN` role, or, a custom role with the following [Snowflake privileges](https://docs.snowflake.com/en/user-guide/security-access-control-overview#label-access-control-overview-privileges){:target="_blank"}: From bdc0379e3eaa11d372e06add99fca90e575733c2 Mon Sep 17 00:00:00 2001 From: forstisabella <92472883+forstisabella@users.noreply.github.com> Date: Thu, 8 Aug 2024 14:24:42 -0400 Subject: [PATCH 2/4] [netlify-build] --- src/connections/delivery-overview.md | 1 + 1 file changed, 1 insertion(+) diff --git a/src/connections/delivery-overview.md b/src/connections/delivery-overview.md index 1bd7b56aa9..0217cec44d 100644 --- a/src/connections/delivery-overview.md +++ b/src/connections/delivery-overview.md @@ -10,6 +10,7 @@ Delivery Overview is a visual observability tool designed to help Segment users > Delivery Overview is generally available for streaming connections (cloud-streaming sources and cloud-streaming destinations) and in public beta for storage destinations. Some metrics specific to storage destinations, like selective syncs, failed row counts, and total rows seen, are not yet available. > All users of Delivery Overview have access to the Event Delivery tab, and can configure delivery alerts for their destinations. + ## Key features Delivery Overview has three core features: From daeb7999a0d9ddd4705f0cb82556454f2d095efa Mon Sep 17 00:00:00 2001 From: forstisabella <92472883+forstisabella@users.noreply.github.com> Date: Thu, 8 Aug 2024 16:00:48 -0400 Subject: [PATCH 3/4] eng review changes [netlify-build] --- src/connections/delivery-overview.md | 2 ++ src/connections/storage/catalog/google-cloud-storage/index.md | 3 --- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/src/connections/delivery-overview.md b/src/connections/delivery-overview.md index 0217cec44d..4ab24d41dd 100644 --- a/src/connections/delivery-overview.md +++ b/src/connections/delivery-overview.md @@ -57,6 +57,8 @@ The pipeline view for storage destination includes the following steps: - **Failed to sync**: Syncs that either failed to sync or were partially successful. Selecting this step takes you to a table of all syncs with one or more failed collections. Select a sync from the table to view the discard reason, any collections that failed, the status, and the number of rows that synced for each collection. - **Successfully synced**: Events that were successfully synced with your storage destination. + + The following image shows a storage destination with 23 partially successful syncs: ![A screenshot of the Delivery Overview tab for a Storage destination, with the Failed to sync step selected and a table of partially successful syncs.](images/delivery-overview-storage-destinations.png) diff --git a/src/connections/storage/catalog/google-cloud-storage/index.md b/src/connections/storage/catalog/google-cloud-storage/index.md index 755a1db7ee..d6400bf758 100644 --- a/src/connections/storage/catalog/google-cloud-storage/index.md +++ b/src/connections/storage/catalog/google-cloud-storage/index.md @@ -18,9 +18,6 @@ The Google Cloud Storage (GCS) destination puts the raw logs of the data Segment 1. Create a Service Account to allow Segment to copy files into the bucket 2. Create a bucket in your preferred region. -{% include content/storage-do-include.md %} - - ## Set up Service Account to give Segment access to upload to your Bucket 1. Go to http://cloud.google.com/iam From 7884b7c67eeffb72ee113cab7e4b79e6b144aaba Mon Sep 17 00:00:00 2001 From: forstisabella <92472883+forstisabella@users.noreply.github.com> Date: Thu, 8 Aug 2024 16:26:14 -0400 Subject: [PATCH 4/4] update to last st. steps [netlify-build] --- src/connections/delivery-overview.md | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/connections/delivery-overview.md b/src/connections/delivery-overview.md index 4ab24d41dd..8bfde19626 100644 --- a/src/connections/delivery-overview.md +++ b/src/connections/delivery-overview.md @@ -54,10 +54,8 @@ The pipeline view for storage destination includes the following steps: - **Filtered at source**: Events that were discarded due to schema settings or [Protocols](/docs/protocols/) Tracking Plans. - **Filtered at destination**: Events that were discarded due to [Destination Filters](/docs/guides/filtering-data/#destination-filters), [filtering in the Integrations object](/docs/guides/filtering-data/#filtering-with-the-integrations-object), [Destination Insert functions](/docs/connections/functions/insert-functions/), or [per source schema integration filters](/docs/guides/filtering-data/#per-source-schema-integrations-filters). [Actions destinations](/docs/connections/destinations/actions/) also have a filtering capability: for example, if your Action is set to only send Identify events, all other event types will be filtered out. Actions destinations with incomplete triggers or disabled mappings are filtered out at this step. [Consent Management](/docs/privacy/consent-management/) users also see events discarded due to consent preferences. - **Events to warehouse rows**: A read-only box that shows the point in the delivery process where Segment converts events into warehouse rows. -- **Failed to sync**: Syncs that either failed to sync or were partially successful. Selecting this step takes you to a table of all syncs with one or more failed collections. Select a sync from the table to view the discard reason, any collections that failed, the status, and the number of rows that synced for each collection. -- **Successfully synced**: Events that were successfully synced with your storage destination. - - +- **Failed to sync**: Syncs that either failed to sync or were partially successful. Selecting this step takes you to a table of all syncs with one or more failed collections. Select a sync from the table to view the discard reason, any collections that failed, the status, and the number of rows that synced for each collection. For information about common errors, see Ware +- **Successfully synced**: A record of all successful or partially successful syncs made with your destination. To view the reason a partially successfully sync was not fully successful, see the Failed to sync step. The following image shows a storage destination with 23 partially successful syncs: