posthog

package
v0.3.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 1, 2024 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Overview

Package posthog contains posthog helper functions and utilities

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetPackageToPosthogProperties

func GetPackageToPosthogProperties(header *http.Header) posthog.Properties

GetPackageToPosthogProperties can be used to parse out an http header and map the headers to posthog properties array

func ToPosthogProperties

func ToPosthogProperties(orgName string) map[string]interface{}

Types

type Config

type Config struct {
	// Enabled is a flag to enable or disable PostHog
	Enabled bool `json:"enabled" koanf:"enabled" default:"false"`
	// APIKey is the PostHog API Key
	APIKey string `json:"api_key" koanf:"api_key"`
	// Host is the PostHog API Host
	Host string `json:"host" koanf:"host" default:"https://app.posthog.com"`
}

Config is the configuration for PostHog

func (*Config) Capture

func (c *Config) Capture(command *cobra.Command, userID string)

Capture is intended to be a wrapper around CLI commands to generate generic events associated with the CLI actions

func (*Config) Init

func (c *Config) Init() *PostHog

Init returns a pointer to a PostHog object

type PostHog

type PostHog struct {
	Identifier string
	// contains filtered or unexported fields
}

func (*PostHog) AssociateUser

func (p *PostHog) AssociateUser(userID string, organizationID string)

AssociateUser function is used to associate a user with an organization in PostHog

func (*PostHog) Cleanup

func (p *PostHog) Cleanup()

Cleanup cleans up the cleanup

func (*PostHog) Event

func (p *PostHog) Event(eventName string, properties posthog.Properties)

Event is used to send an event to PostHog

func (*PostHog) NewOrganization

func (p *PostHog) NewOrganization(organizationID, userID string, properties posthog.Properties)

NewOrganization uses the NewGroups reference to create a new organization in the organization groups category, and also sets attributes for the organization

func (*PostHog) NewUser

func (p *PostHog) NewUser(userID string, properties posthog.Properties)

NewUser maps the userID to the user group

func (*PostHog) OrganizationEvent

func (p *PostHog) OrganizationEvent(organizationID, userID, eventName string, properties posthog.Properties)

OrganizationEvent creates an event associated with the organization, where the eventName can be passed in generically and associated with the org ID if provided

func (*PostHog) OrganizationProperties

func (p *PostHog) OrganizationProperties(organizationID string, properties posthog.Properties)

OrganizationProperties sets org properties

func (*PostHog) UserEvent

func (p *PostHog) UserEvent(userID, eventName string, properties posthog.Properties)

UserEvent captures user properties

func (*PostHog) UserProperties

func (p *PostHog) UserProperties(userID string, properties posthog.Properties)

UserProperties is to expand the properties of the user in the user group

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL