Published on October 10, 2022

Monitor when a user changes their email address in your Go application

Monitor when a user changes their email address in your Go application

Most of the time, when building a Go application that is served to users, you will need to store the user's email address in your database. There are multiple reasons for this, such as sending the user a welcome email when they sign up for your application, sending the user a password reset email when they request a password reset, or sending the user a notification when they have been mentioned in a comment. In addition, it is commonly used for user authentication and authorization.

In most cases, some users may want to change their email addresses for various reasons while using your application. For example, they may have mistyped their email address when they signed up for your application or changed their email address for personal reasons. In any case, it is essential to track when a user changes their email address in your Go application to ensure that you are always aware of the change and can update your database accordingly.

Fortunately, here at LogSnag, we have created a powerful solution for this problem. At its core, logSnag is a powerful, real-time event tracking tool that works seamlessly with any Go application. LogSnag makes it easy to track any important event in your Go application and monitor things such as user activity, user journeys, and more.

One common use case for LogSnag is to set up event tracking for when users change their email addresses in your Go application in real-time. You may also optionally set up rules to notify you and your team when a user changes their email address in your Go application.

In addition, LogSnag allows you to track user journeys and create a timeline of their actions to monitor the users' email address history and any other activity they have done in your application. This way, you can always track the activity of a specific user, such as when they change their email address and any other activity they have done in your application.


Setting up LogSnag

  1. Sign up for a free LogSnag account.
  2. Create your first project from the dashboard.
  3. Head to settings and copy your API token.

Go code snippets

Use the following code snippet to track when a user changes their email address in your Go application. All you need to do is to replace the YOUR_API_TOKEN with your LogSnag API token and update the project name to your project name.

Using Go with Native
package main

import (
  "fmt"
  "strings"
  "net/http"
  "io/ioutil"
)

func main() {

  url := "https://api.logsnag.com/v1/log"
  method := "POST"

  payload := strings.NewReader(`{"project":"my-saas","channel":"profile","event":"Updated Email Address","description":"User updated their email address to john@example.com","icon":"📭","notify":true}`)

  client := &http.Client {
  }
  req, err := http.NewRequest(method, url, payload)

  if err != nil {
    fmt.Println(err)
    return
  }
  req.Header.Add("Content-Type", "application/json")
  req.Header.Add("Authorization", "Bearer YOUR_API_TOKEN")

  res, err := client.Do(req)
  if err != nil {
    fmt.Println(err)
    return
  }
  defer res.Body.Close()

  body, err := ioutil.ReadAll(res.Body)
  if err != nil {
    fmt.Println(err)
    return
  }
  fmt.Println(string(body))
}

Go integration details

LogSnag provides a set of powerful features such as cross-platform push notifications, event filtering, user and product journeys, charts, insights, and more. In addition, LogSnag is flexible and easy to use, making it a great companion for your Go applications.

LogSnag provides a generous free plan to get you started with event tracking. You can also check out our pricing page to see our paid plans. So don't hesitate to give us a try and let us know what you think!

Other use-cases for LogSnag

  1. Monitor your CI/CD build status for your Go application
  2. Monitor your CPU usage in your Go application
  3. Monitor when database goes down in your Go application
  4. Monitor high disk usage in your Go application
  5. Monitor failed logins in your Go application
  6. Monitor failed payments for your Go application
  7. Monitor memory usage in your Go application
  8. Monitor MySQL downtime in your Go application
  9. Monitor when a new feature is used in your Go application
  10. Monitor your Postgres downtime in your Go application
  11. Monitor Redis downtime in your Go application
  12. Monitor suspicious activity in your Go application
  13. Monitor when a user exceeds the usage limit for your Go service
  14. Monitor when a user is being rate limited in your Go application
  15. Get a notification when your Go code is done executing
  16. Send push notifications to your phone or desktop using Go
  17. Track canceled subscriptions in your Go application
  18. Track your Go cron jobs
  19. Track when a file is uploaded to your Go application
  20. Track when a form is submitted to your Go application
  21. Track payment events via Go
  22. Track user sign in events in Go
  23. Track user signup events via Go
  24. Track waitlist signup events via Go
View all common use-cases with Go