Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Important
Cette fonctionnalité est en préversion privée. Pour l’essayer, contactez votre Azure Databricks contact.
Ajoutez des analyses à une application existante en trois étapes : enregistrer un événement, le transférer via votre backend, puis le vérifier dans Analytics. Aucune bibliothèque analytique spécifique n’est requise.
Prerequisites
- Une application inscrite dans l’aperçu de l’App Analytics, avec la télémétrie d’application activée.
- Les autorisations listées dans les Exigences.
Étape 1 : Enregistrer un événement
Appelez ce code à partir d’un gestionnaire d’interaction existant. Cet exemple enregistre report_exported après qu’une exportation de rapport réussisse :
const logRecord = {
timeUnixNano: (BigInt(Date.now()) * 1000000n).toString(),
eventName: 'report_exported',
attributes: [
{ key: 'databricks.app.analytics.schema.version', value: { intValue: '1' } },
{ key: 'databricks.app.analytics.event.id', value: { stringValue: crypto.randomUUID() } },
{ key: 'databricks.app.analytics.event.type', value: { stringValue: 'action' } },
{ key: 'databricks.app.analytics.event.name', value: { stringValue: 'report_exported' } },
],
};
const response = await fetch('/_analytics', {
method: 'POST',
headers: { 'content-type': 'application/json' },
body: JSON.stringify(logRecord),
});
if (!response.ok) throw new Error('Analytics export failed.');
/_analyticsc’est une route que vous ajoutez à votre application, pas un point de terminaison Azure Databricks intégré. L’étape 2 montre la logique d’export de son gestionnaire côté serveur.
session_id est facultatif. Si vous en fournissez un, réutilisez la session analytique d’origine plutôt que de générer un nouvel ID de session pour chaque événement. Si vous réessayez un événement, renvoyez le même enregistrement, y compris son ID et son horodatage.
Pour les vues de page, les Web Vitals et les propriétés d’action, consultez Exemples de payload.
Étape 2 : Exportez depuis votre backend
Ajoutez un POST /_analytics gestionnaire à votre backend existant. Passez son corps de requête analysé et validé à la fonction suivante. Conservez la route protégée par les mécanismes de contrôle d’accès de votre application et appliquez vos limites de requêtes et votre gestion des erreurs existantes. Ne renvoyez un succès au navigateur qu’une fois la fonction exécutée avec succès.
La fonction enveloppe l’enregistrement dans une requête OpenTelemetry Protocol (OTLP) et l’envoie au collecteur de l’application :
async function exportAnalyticsRecord(logRecord) {
const endpoint = process.env.OTEL_EXPORTER_OTLP_ENDPOINT;
if (endpoint !== 'http://localhost:4314') {
throw new Error('This example requires the TCP OTLP/HTTP receiver at localhost:4314.');
}
const response = await fetch(`${endpoint}/v1/logs`, {
method: 'POST',
headers: { 'content-type': 'application/json' },
body: JSON.stringify({
resourceLogs: [
{
resource: {
attributes: [{ key: 'service.name', value: { stringValue: process.env.DATABRICKS_APP_NAME } }],
},
scopeLogs: [{ logRecords: [logRecord] }],
},
],
}),
});
if (!response.ok) throw new Error('Collector rejected the request.');
const text = await response.text();
const result = text ? JSON.parse(text) : {};
if (Number(result.partialSuccess?.rejectedLogRecords ?? 0) > 0) {
throw new Error('Collector rejected the event.');
}
}
Important
Cet exemple HTTP utilise le récepteur TCP en localhost:4314, qui prend en charge HTTP ainsi que gRPC. Pour un unix:// ou un point de terminaison gRPC uniquement, utilisez plutôt un exportateur OpenTelemetry compatible. Le collecteur s’exécute à l’intérieur de l’application déployée, et non sur l’appareil du visiteur. Voir Variables d’environnement de télémétrie de l’application.
Étape 3 : Vérifier dans l’analytique
- Déploie les modifications en utilisant le flux de déploiement existant de ton application, puis déclenche l’interaction instrumentée.
- Sur la page des détails de l’application, ouvrez Analytics et sélectionnez un entrepôt SQL.
- Si le guide d’accueil s’affiche, sélectionnez Vérifier les événements, puis Open Analytics lorsque des événements s’affichent.
- Trouvez
report_exporteddans les actions principales ou les événements en direct.
L’acceptation par le collecteur précède l’ingestion de table. Si l’événement n’apparaît pas, rafraîchissez les Analytiques et vérifiez la plage de temps. Suivez toutes les instructions d’autorisation indiquées par l’interface. Pour vérifier les données de télémétrie sous-jacentes, voir Vérifier les données de télémétrie.