Track user sign in events in Objective-C

Connect LogSnag to your Objective-C project to track and monitor user sign-in and other important events - LogSnag makes event tracking easy.

Most of the time, when building a Objective-C product that requires users to authenticate and sign in to access the product, you may decide that it is essential to track the sign-in attempts.

Monitoring the sign-in events is an excellent way to track the number of users who continue to log in and use your Objective-C application. This is a great way to gauge the effectiveness of your product and measure your user retention rate.

A good understanding of this metric is critical to the success of a product. It can give you great insight into how your business grows and how your users interact with your Objective-C product.

An easy way to set up event tracking is to use LogSnag, a simple event tracking tool that works seamlessly with Objective-C.


Start monitoring user sign-in events

  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.

Objective-C code snippets

All you have to do next is to copy the following code snippets into your Objective-C code and replace the YOUR_API_TOKEN and project values with your API token and project name.

Using Objective-C with NSURLSession
#import <Foundation/Foundation.h>

dispatch_semaphore_t sema = dispatch_semaphore_create(0);

NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"https://api.logsnag.com/v1/log"]
  cachePolicy:NSURLRequestUseProtocolCachePolicy
  timeoutInterval:10.0];
NSDictionary *headers = @{
  @"Content-Type": @"application/json",
  @"Authorization": @"Bearer YOUR_API_TOKEN"
};

[request setAllHTTPHeaderFields:headers];
NSData *postData = [[NSData alloc] initWithData:[@"{\"project\":\"my-saas\",\"channel\":\"auth\",\"event\":\"User Signed In\",\"description\":\"email: john@doe.com\",\"icon\":\"🔓\",\"notify\":true}" dataUsingEncoding:NSUTF8StringEncoding]];
[request setHTTPBody:postData];

[request setHTTPMethod:@"POST"];

NSURLSession *session = [NSURLSession sharedSession];
NSURLSessionDataTask *dataTask = [session dataTaskWithRequest:request
completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
  if (error) {
    NSLog(@"%@", error);
    dispatch_semaphore_signal(sema);
  } else {
    NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse *) response;
    NSError *parseError = nil;
    NSDictionary *responseDictionary = [NSJSONSerialization JSONObjectWithData:data options:0 error:&parseError];
    NSLog(@"%@",responseDictionary);
    dispatch_semaphore_signal(sema);
  }
}];
[dataTask resume];
dispatch_semaphore_wait(sema, DISPATCH_TIME_FOREVER);

Objective-C integration details

LogSnag is a simple event tracking tool that works seamlessly with Objective-C and makes it easy to track almost anything in your Objective-C code.

LogSnag allows you to track your important events in real-time and create timelines of your events. It also makes it easy to create custom metrics and charts such as the number of sign-in attempts per day, the conversion funnels for users who sign up and sign in, and other such metrics.

You may also create simple or complex user journeys for tracking and monitoring individual user journeys through your product.

LogSnag is also available on desktop, mac, iOS, and Android and allows you to receive real-time updates and push notifications when your users sign in, sign out, or use your product.

Other use-cases for LogSnag

  1. Track payment events via Objective-C

  2. Track user signup events via Objective-C

  3. Track your Objective-C cron jobs

  4. Track waitlist signup events via Objective-C

  5. Get a notification when your Objective-C code is done executing

  6. Monitor when a user exceeds the usage limit for your Objective-C service

  7. Monitor when a new feature is used in your Objective-C application

  8. Monitor suspicious activity in your Objective-C application

  9. Monitor when a user is being rate limited in your Objective-C application

    View all common use-cases with Objective-C