import { IOrchestrationFunctionContext } from 'durable-functions/lib/src/classes' ; import { Logger , LogLevel } from 'logger' ; import { OrchestrationTelemetryProperties } from './orchestration-telemetry-properties' ; export class OrchestrationLogger { constructor ( private readonly context , private readonly logger ) { } public logOrchestrationStep ( message , logType = LogLevel . info , properties ? ) { this . logger . log ( message , logType , { ... this . getDefaultLogProperties ( ) , ... properties , } ) ; } private getDefaultLogProperties ( ) { return { instanceId : this . context . df . instanceId , isReplaying : this . context . df . isReplaying . toString ( ) , currentUtcDateTime : this . context . df . currentUtcDateTime . toUTCString ( ) , } ; } }