Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Riproduzione dei SNS messaggi Amazon per gli abbonati all'FIFOargomento
Amazon SNS replay consente agli abbonati agli argomenti di recuperare i messaggi archiviati dal Topic Data Store e di reinviarli (o riascoltarli) a un endpoint sottoscritto. I messaggi possono essere riprodotti non appena viene creato l'abbonamento. Un messaggio riprodotto ha lo stesso contenuto, MessageId
e Timestamp
della copia originale e contiene anche l'attributo Replayed
, che consente di identificare che si tratta di un messaggio riprodotto. Per riprodurre solo messaggi selezionati, puoi aggiungere una policy di filtro al tuo abbonamento. Per ulteriori informazioni sul filtraggio dei messaggi, consulta Filtro dei messaggi riprodotti.
Crea una politica di riproduzione dei messaggi utilizzando AWS Management Console
Utilizza questa opzione per creare una nuova policy di riproduzione utilizzando la AWS Management Console.
Accedi alla SNSconsole Amazon
. -
Scegli una sottoscrizione all'argomento o creane una nuova. Per ulteriori informazioni sulla creazione di sottoscrizioni, consultaCreare un abbonamento a un SNS argomento di Amazon.
-
Per avviare la riproduzione del messaggio, vai al menu a discesa Riproduci e scegli Inizia riproduzione.
-
Dalla finestra modale Intervallo di tempo di riproduzione, effettua le seguenti selezioni:
-
Scegli la data e l'ora di inizio della riproduzione: scegli la data (YYYY/MM/DDformato) e l'ora (formato 24 ore hh:mm:ss) da cui desideri iniziare a riprodurre i messaggi archiviati. L'ora di inizio deve essere successiva all'inizio dell'orario di archiviazione approssimativo.
-
(Facoltativo) Scegli la data e l'ora di fine della riproduzione: scegli la data (YYYY/MM/DDformato) e l'ora (formato hh:mm:ss 24 ore) in cui desideri interrompere la riproduzione dei messaggi archiviati.
-
Scegli Avvia riproduzione.
-
-
(Facoltativo) Per arrestare la riproduzione di un messaggio, vai alla pagina Dettagli sottoscrizione e scegli Interrompi riproduzione dal menu a discesa Riproduci.
-
(Facoltativo) Per monitorare le metriche di riproduzione dei messaggi dall'interno di questo flusso di lavoro utilizzando, vedi. CloudWatch Monitora le metriche di riproduzione dei messaggi utilizzando Amazon CloudWatch
Visualizzazione e modifica di una policy di riproduzione dei messaggi
Nella pagina Dettagli sottoscrizione puoi eseguire le seguenti operazioni:
-
Per visualizzare lo stato di riproduzione dei messaggi, nel campo Stato riproduzione vengono visualizzati i seguenti valori:
-
Completato: la riproduzione ha correttamente ridistribuito tutti i messaggi e ora distribuisce i messaggi appena pubblicati.
-
In corso: la riproduzione sta attualmente riproducendo i messaggi selezionati.
-
Non riuscito: la riproduzione non è stata completata.
-
In sospeso: lo stato predefinito durante l'avvio della riproduzione.
-
-
(Facoltativo) Per modificare la policy di riproduzione dei messaggi, vai alla pagina Dettagli sottoscrizione e scegli Interrompi riproduzione dal menu a discesa Riproduci. L'avvio di una riproduzione sostituirà la riproduzione esistente.
Aggiungi una politica di riproduzione all'abbonamento utilizzando il API
Per riprodurre i messaggi archiviati usa l'attributo. ReplayPolicy
ReplayPolicy
può essere usato con le azioni Subscribe
and SetSubscriptionAttributes
API. Questa policy ha i seguenti valori:
-
StartingPoint
(Obbligatorio): segnala da dove iniziare a riprodurre i messaggi. -
EndingPoint
(Facoltativo): segnala quando interrompere la riproduzione dei messaggi. SeEndingPoint
viene omesso, la riproduzione continuerà fino a quando non verrà raggiunta l'ora corrente. -
PointType
(Obbligatorio): imposta il tipo di punto iniziale e finale. Attualmente, l'unico valore supportato perPointType
èTimestamp
.
Ad esempio, per ripristinare un errore a valle e inviare nuovamente tutti i messaggi per un periodo di due ore il 1° ottobre 2023, utilizza l'SetSubscriptionAttributes
APIazione per impostare a ReplayPolicy
come segue:
{ "PointType":"Timestamp", "StartingPoint":"2023-10-01T10:00:00.000Z", "EndingPoint":"2023-10-01T12:00:00.000Z" }
Per riprodurre tutti i messaggi inviati all'argomento a partire dal 1° ottobre 2023 e continuare a ricevere tutti i nuovi messaggi pubblicati sull'argomento, utilizza l'SetSubscriptionAttributes
APIazione per impostare un ReplayPolicy
abbonamento nel modo seguente:
{ "PointType":"Timestamp", "StartingPoint":"2023-10-01T00:00:00.000Z" }
Per verificare che un messaggio sia stato riprodotto, l'attributo booleano Replayed
viene aggiunto a ogni messaggio riprodotto.
Aggiungi una politica di riproduzione all'abbonamento utilizzando il SDK
Per usare un AWS SDK, devi configurarlo con le tue credenziali. Per ulteriori informazioni, consulta config
Shared and credentials
files nella AWS SDKsand Tools Reference Guide.
Il seguente esempio di codice mostra come impostare un abbonamento per recapitare nuovamente i messaggi dall'archivio dell'SNSFIFOargomento Amazon per una finestra temporale di 2 ore il 1° ottobre 2023. ReplayPolicy
// Specify the ARN of the Amazon SNS subscription to initiate the ReplayPolicy on. String subscriptionArn = "arn:aws:sns:us-east-2:123456789012:MyArchiveTopic.fifo:1d2a3e9d-7f2f-447c-88ae-03f1c68294da"; // Set the ReplayPolicy to replay messages from the topic's archive // for a 2 hour time period on October 1st 2023 between 10am and 12pm UTC. String replayPolicy = "{\"PointType\":\"Timestamp\",\"StartingPoint\":\"2023-10-01T10:00:00.000Z\",\"EndingPoint\":\"2023-10-01T12:00:00.000Z\"}"; // Set the ArchivePolicy for the Amazon SNS topic SetSubscriptionAttributesRequest request = new SetSubscriptionAttributesRequest() .withSubscriptionArn(subscriptionArn) .withAttributeName("ReplayPolicy") .withAttributeValue(replayPolicy); sns.setSubscriptionAttributes(request);
Comprendere il EndingPoint
Quando applichi un ReplayPolicy
SNS abbonamento Amazon, il EndingPoint
valore è facoltativo. Se non EndingPoint
viene fornito alcun valore, la riproduzione inizierà dal valore specificato StartingPoint
e continuerà fino al raggiungimento dell'ora corrente, inclusa l'elaborazione dei messaggi appena pubblicati. Una volta recuperato, l'abbonamento funzionerà come un normale abbonamento e riceverà nuovi messaggi man mano che vengono pubblicati.
Se EndingPoint
viene specificato un, il servizio riprodurrà i messaggi dall'inizio alla fine EndingPoint
e poi StartingPoint
si interromperà. Questa azione mette effettivamente in pausa l'abbonamento. Mentre l'abbonamento è in pausa, i messaggi appena pubblicati non verranno recapitati all'endpoint sottoscritto.
Per riprendere il recapito dei messaggi, applicane uno nuovo ReplayPolicy
senza specificarne uno EndingPoint
e impostalo sul momento desiderato StartingPoint
a partire dal quale continuare a ricevere i messaggi. Ad esempio, per riprendere un abbonamento dal punto in cui era terminato un replay precedente, imposta il nuovo su StartingPoint
quello fornito in precedenza. EndingPoint
Filtro dei messaggi riprodotti
SNSIl filtro dei messaggi di Amazon ti consente di controllare i messaggi riprodotti che Amazon SNS riproduce sul tuo endpoint di abbonato. Quando il filtraggio dei messaggi e l'archiviazione dei messaggi sono entrambi abilitati, Amazon recupera SNS prima il messaggio dall'archivio dati dell'argomento, quindi lo applica a quello dell'abbonamento. FilterPolicy
Il messaggio viene recapitato all'endpoint sottoscritto quando c'è una corrispondenza, altrimenti il messaggio viene filtrato. Per ulteriori informazioni, consulta Politiche di filtro degli SNS abbonamenti Amazon.
Monitora le metriche di riproduzione dei messaggi utilizzando Amazon CloudWatch
Puoi monitorare i messaggi di riproduzione utilizzando Amazon CloudWatch utilizzando le seguenti metriche. Per ricevere notifiche in caso di anomalie nei carichi di lavoro e contribuire a evitare impatti, puoi configurare gli CloudWatch allarmi Amazon in base a questi parametri. Per ulteriori dettagli, consulta Registrazione e monitoraggio in Amazon SNS.
Parametro | Descrizione |
---|---|
NumberOfReplayedNotificationsDelivered |
Fornisce all'abbonato il numero aggregato di messaggi riprodotti dall'archivio degli argomenti, con una risoluzione di 1 minuto. |
NumberOfReplayedNotificationsFailed |
Fornisce all'abbonato il numero aggregato di messaggi riprodotti non inviati dall'archivio degli argomenti, con una risoluzione di 1 minuto. |