Azure function context.log not logging synchronously

Dy Zapra, Keisha Marie 25 Reputation points
2023-03-13T10:54:40.04+00:00

I expect the following to log in order from top to bottom but results show that they're not in order

// Azure function handler
export const browseIssues = context => {
  context.log.info({ a: 'first object', b: { q: 'test 1' } });
  context.log.info({ a: 'second object', b: { q: 'test 2' } });
  context.log.info({ a: 'third object', b: { q: 'test 3' } });

  context.log.info(JSON.stringify({ a: 'first string', b: { q: 'test 1' } }));
  context.log.info(JSON.stringify({ a: 'second string', b: { q: 'test 2' } }));
  context.log.info(JSON.stringify({ a: 'third string', b: { q: 'test 3' } }));

  context.log.info('first simple string');
  context.log.info('second simple string');
  context.log.info('third simple string');
}

Results

Screenshot 2023-03-12 at 22.52.56

Any ideas on why this is happening and how to remedy this? Issue seems to be confined in azure context's log as console.log logs synchronously.

Node version: v18.12.1

Here's a sample barebones repository where this can be reproduced

https://github.com/keidyz/azure-function-logging-issue

Azure Functions
Azure Functions
An Azure service that provides an event-driven serverless compute platform.
4,678 questions
{count} vote