Events
Events
Section titled EventsEste módulo permite gerenciar eventos e propriedades — pares chave/valor persistentes que são anexados automaticamente a cada evento rastreado.
As super properties são armazenadas localmente e mescladas ao payload de cada evento quando você rastreia eventos.
Para saber mais sobre como gerenciar eventos na interface do OpenReplay, acesse Data Management.
Disponível em:
tracker.analytics.events
Conceitos
Section titled ConceitosSuper properties
Section titled Super propertiesAs super properties são armazenadas no SDK e mescladas a cada evento em properties.
Propriedades de evento
Section titled Propriedades de eventoAs propriedades de evento são passadas apenas em uma única chamada de track/sendEvent e não são salvas como super properties.
Chaves reservadas
Section titled Chaves reservadasDois conjuntos diferentes de chaves são rejeitados, dependendo do helper:
Propriedades padrão — coletadas pelo próprio SDK e enviadas com cada evento. setProperty as ignora silenciosamente, então você não consegue sobrescrevê-las com uma super property:
os, os_version, browser, browser_version, platform, screen_height, screen_width, initial_referrer, utm_source, utm_medium, utm_campaign, user_id, distinct_id, sdk_edition, sdk_version, timezone, search_engine
Chaves de payload — properties, token e timestamp. Elas fazem parte do envelope do evento, então setPropertiesOnce e unsetProperties as ignoram.
Assinaturas de nível superior
Section titled Assinaturas de nível superior// Track an event.
// The `properties` argument is per-event only (not persisted).
tracker.analytics.events.sendEvent(eventName: string, properties?: Record<string, any>, options?: { send_immediately: boolean })
// Create/update super properties (persisted)
tracker.analytics.events.setProperty(name: string, value: any): void
tracker.analytics.events.setProperty(properties: Record<string, any>): void
// Create super properties only if they don't exist yet (persisted)
tracker.analytics.events.setPropertiesOnce(name: string, value: any): void
tracker.analytics.events.setPropertiesOnce(properties: Record<string, any>): void
// Remove super properties (persisted)
tracker.analytics.events.unsetProperties(name: string): void
tracker.analytics.events.unsetProperties(names: string[]): void
// Clear all super properties
tracker.analytics.events.reset(): void
Rastreando eventos com propriedades
Section titled Rastreando eventos com propriedadesPropriedades por evento (não persistidas)
Section titled Propriedades por evento (não persistidas)tracker.analytics.events.sendEvent("Button Clicked", {
button_text: "Start",
page: "home",
})
Essas propriedades se aplicam apenas a este evento.
Super properties + propriedades por evento (mescladas)
Section titled Super properties + propriedades por evento (mescladas)Quando você define super properties, elas são incluídas automaticamente em cada evento e depois mescladas com as propriedades por evento:
tracker.analytics.events.setProperty({
app_version: "1.42.0",
env: "prod",
})
tracker.analytics.events.sendEvent("Signup Started", {
// per-event, can override a super property with the same key
plan: "pro",
})
Ordem de mesclagem:
- as super properties são adicionadas primeiro
- as propriedades por evento são mescladas por cima
Assim, as propriedades por evento prevalecem em caso de colisão de chaves.
setProperty
Section titled setPropertyCria ou sobrescreve super properties.
// object form
tracker.analytics.events.setProperty({
app_version: "1.42.0",
region: "eu",
})
// key/value form
tracker.analytics.events.setProperty("build_sha", "3f2c9a1")
Observações:
Section titled Observações:- As propriedades padrão coletadas pelo SDK são ignoradas e não serão adicionadas como super properties.
- A forma chave/valor é ignorada quando
valueéundefined; passenullpara armazenar um valor vazio. - As alterações são salvas localmente somente se algo realmente mudou.
setPropertiesOnce
Section titled setPropertiesOnceCria super properties somente se elas ainda não existirem.
tracker.analytics.events.setPropertiesOnce({
first_seen_at: Date.now(),
signup_source: "docs",
})
// key/value form
tracker.analytics.events.setPropertiesOnce("initial_referrer", document.referrer)
Observações:
Section titled Observações:- As propriedades só são definidas se a chave estiver ausente.
- As chaves reservadas (
properties,token,timestamp) são ignoradas.
unsetProperties
Section titled unsetPropertiesRemove uma ou mais super properties.
// single
tracker.analytics.events.unsetProperties("region")
// multiple
tracker.analytics.events.unsetProperties(["app_version", "build_sha"])
Observações:
Section titled Observações:- As chaves reservadas não podem ser removidas.
- A remoção é persistida.
reset
Section titled resetLimpa todas as super properties.
tracker.analytics.events.reset()
Envio imediato
Section titled Envio imediatoPor padrão, os eventos são enfileirados/agrupados em lotes. Você pode solicitar o envio imediato de um evento:
tracker.analytics.events.sendEvent(
"Checkout Completed",
{ value: 199, currency: "EUR" },
{ send_immediately: true },
)
Aliases compatíveis com o Mixpanel
Section titled Aliases compatíveis com o MixpanelTodos os métodos oferecem suporte a uma camada de compatibilidade, fornecida por familiaridade:
tracker.analytics.events.register // setProperty
tracker.analytics.events.register_once // setPropertiesOnce
tracker.analytics.events.unregister // unsetProperties
tracker.analytics.events.track // sendEvent
Tem dúvidas?
Section titled Tem dúvidas?Se você encontrar algum problema, conecte-se ao nosso Slack e peça ajuda à nossa comunidade.