Cette rubrique explique comment utiliser la gestion des journaux pour générer des métriques par seconde.
Contexte
Les graphiques de Cloud Monitor affichent des moyennes à la minute et ne permettent pas de visualiser les données TPS par seconde. Pour ApsaraMQ for RabbitMQ, le TPS correspond au nombre de requêtes de méthodes AMQP initiées par les clients chaque seconde.
Le calcul du TPS inclut les méthodes AMQP suivantes :
ConnectionOpen, ChannelOpen
QueueDeclare, QueueDelete, QueueBind, QueueUnbind
ExchangeDeclare, ExchangeDelete
ExchangeBind, ExchangeUnBind
SendMessage, BasicConsume, BasicGet, BasicAck, BasicReject, BasicNack, BasicRecover
Pour plus d'informations sur les méthodes de requête, consultez la section Méthodes de requête.
Procédure
-
Créez un Metricstore pour stocker les données de métriques nettoyées.
Sur la page des détails du projet dans la console Simple Log Service, cliquez sur . La page affiche alors l'état vide The current Project has no Metricstore.
Dans le panneau Create Metricstore, configurez les informations de base du Metricstore. Les paramètres clés incluent Name (nom du Metricstore) et data retention period (durée de conservation des données, 30 jours par défaut).
-
Créez une tâche de transformation de données.
-
Dans le logstore, saisissez une instruction de requête. Cet exemple interroge les codes d'erreur de l'instance.
* | SELECT Code, count(*) as num, microtime / 1000 / 1000 as timeSecond group by Code, timeSecond limit 1000000Le format de l'instruction est :
Instruction de recherche | Instruction analytique. L'instruction de recherche filtre les données tandis que l'instruction analytique est une requête SQL standard. L'écriture des données dans un Metricstore nécessite l'extraction de trois composants à partir des résultats de la requête : les libellés requis, les valeurs de métrique pour chaque libellé et l'horodatage. Dans cet exemple,Codeest le libellé du code d'erreur,numest la valeur de métrique pour chaque code ettimeSecondest l'horodatage en secondes.La requête renvoie un tableau comportant trois colonnes : Code (code d'erreur), num (nombre) et timeSecond (horodatage par seconde).
-
Dans les résultats de la requête, cliquez sur l'onglet Graph, puis sur Save as Scheduled SQL Job. Dans l'onglet Compute Settings, configurez les paramètres, puis cliquez sur Next. Pour SQL Type, sélectionnez Search & Analysis. Pour Write Mode, sélectionnez Import New Data. Configurez le mappage des colonnes d'écriture (Write Column Mapping) en fonction des champs de votre requête SQL.
RemarqueLe magasin de destination doit être le Metricstore créé à l'étape précédente.
Dans l'onglet Scheduling Settings, définissez l'intervalle de planification, puis cliquez sur OK. Vous pouvez définir l'intervalle de planification sur horaire ou sur un intervalle personnalisé. Le délai d'expiration SQL (SQL Timeout) par défaut est de 600 secondes et le délai d'exécution (Execution Delay) par défaut est de 60 secondes.
-
-
Interrogez la distribution des valeurs de métrique dans le Metricstore. Dans le volet de navigation de gauche, sélectionnez le Metricstore de destination, accédez à la page de requête et exécutez une requête.
Voici un exemple de résultat de requête :

-
Facultatif : Connectez les données du Metricstore à un tableau de bord de visualisation. Vous pouvez utiliser Grafana ou les fonctionnalités de visualisation de Simple Log Service.
Pour vous connecter à un tableau de bord Grafana, consultez la section Connecter des données de séries temporelles à Grafana.
Pour utiliser la fonctionnalité de tableau de bord de visualisation de Simple Log Service, consultez la section Visualisation.
Le tutoriel précédent utilise les données de code d'erreur de l'instance comme exemple. Vous pouvez également nettoyer d'autres types de données, tels que le taux d'envoi et de réception des messages pour chaque canal sur chaque RemoteAddress, l'activité par seconde de chaque file d'attente, le nombre total de messages envoyés et reçus par seconde, ainsi que le nombre d'appels par seconde de chaque API.