Function App host restarting but can't see why

See original GitHub issue

Investigative information

Please provide the following:

  • Timestamp: 2019-03-12T03:00:00.000000Z until 2019-03-12T12:00:00.0000000Z
  • Function App version (1.0 or 2.0): 2.0
  • Function App name:
  • Function name(s) (as appropriate):
  • Invocation ID: 27ea1788-840a-4e61-99f8-b4584fecf4b4
  • Region: Australia Southeast

Repro steps

Currently as we kick off a large Durable Function orchestration, we are expecting that the activity and sub orchestrations to finish and return to the ‘root’ orchestration and complete.

What we are observing is that while the majority of the processes have completed, we end up getting to a point where the host seems to constantly restart. We might then get a couple of trace messages to indicate some processing and activity, no error messages, then another cycle of host initialization.

Looking through our Log Analytics exceptions doesn’t yield and errors and there doesn’t seem to be anything particularly apparent in the traces section either.

Using the following query: traces | where message contains "Initializing Host." and timestamp >= todatetime('2019-03-12T03:00:00.000000Z') and timestamp <= todatetime('2019-03-12T12:00:00.0000000Z') ends up yielding 167 records for the time period.

It appears that these messages seem to be spread out across the cloud_RoleInstances that are running

traces | where message contains "Initializing Host." and timestamp >= todatetime('2019-03-12T03:00:00.000000Z') and timestamp <= todatetime('2019-03-12T12:00:00.0000000Z') | summarize count() by cloud_RoleInstance image

Exception query yields no results 😦 exceptions | where timestamp >= todatetime('2019-03-12T03:00:00.000000Z') and timestamp <= todatetime('2019-03-12T12:00:00.0000000Z')

Looking at ‘Diagnose and solve problems’ blade for the Function App and going to ‘Function App Down or Reporting Errors’ indicates no errors, however, a number of functions that have not been completed.

image

Expected behavior

Function host to not be constantly restarting and finish processing.

Actual behavior

Function host machines seem to be ‘restarting’ and going through its initialization phase.

Known workarounds

None known

Related information

Function SDK: 1.0.26 Language: C#

  • We are currently running our Function app on an App Service Plan (scaled to 3 instances of B3)
  • We have disabled applicationInsights sampling to ensure that we are getting all logs to flow through.
  • We heavily use Durable Function orchestrations calling sub orchestrations and activities.
    <PackageReference Include="ExifLib.Standard" Version="1.7.0" />
    <PackageReference Include="Magick.NET-Q16-AnyCPU" Version="7.10.1" />
    <PackageReference Include="Microsoft.Azure.CognitiveServices.Vision.ComputerVision" Version="3.3.0" />
    <PackageReference Include="Microsoft.Azure.CognitiveServices.Vision.Face" Version="2.3.0-preview" />
    <PackageReference Include="Microsoft.Azure.WebJobs.Extensions.CosmosDB" Version="3.0.3" />
    <PackageReference Include="Microsoft.Azure.WebJobs.Extensions.DurableTask" Version="1.7.1" />
    <PackageReference Include="Microsoft.Azure.WebJobs.Extensions.ServiceBus" Version="3.0.3" />
    <PackageReference Include="Microsoft.Azure.WebJobs.Extensions.Storage" Version="3.0.3" />
    <PackageReference Include="Microsoft.NET.Sdk.Functions" Version="1.0.26" />
    <PackageReference Include="morelinq" Version="3.1.0" />
    <PackageReference Include="PhotoSauce.MagicScaler" Version="0.9.1" />
    <PackageReference Include="ProjNET4GeoAPI" Version="1.4.1" />
    <PackageReference Include="SixLabors.ImageSharp" Version="1.0.0-beta0005" />
    <PackageReference Include="Soze.Common" Version="1.0.26" />

Issue Analytics

  • State:closed
  • Created 5 years ago
  • Reactions:1
  • Comments:8 (1 by maintainers)

github_iconTop GitHub Comments

1reaction
wahyuencommented, Apr 11, 2019

@fabiocav after much analysis from the team, we’ve tracked down the offending piece of code.

log.LogWarning($"Exception AnalyseImage() - {JsonConvert.SerializeObject(e, new JsonSerializerSettings { ReferenceLoopHandling = ReferenceLoopHandling.Serialize })}");

I’m guessing that was naive implementation on our side. (have since removed it) The difficulty that we found was that the above piece of code caused the whole Function Host to effectively crash there and then. It took us a while to find where this was failing as we were dealing with other messages being processed off Service Bus and we weren’t seeing any consistency in where (if any) errors were being thrown.

We ‘think’ log messages were actually being generated, but unable to be written to Log Analytics in time before the Function Host died…hence when we query Log Analytics we could never find the errors that we were looking for.

I’m unsure if there is a possible way for the Function Host to die (or if it even should?) more gracefully to enable people to diagnose these situations better?

0reactions
thisiscmtcommented, Jan 10, 2020

I am experiencing this exact issue as well with a NodeJS-based app. I have an Azure service bus trigger configured and that part works fine. Looking at the streaming log I see my app get the message and start its execution. But shortly after it starts the job host restarts, and I see messages like this in the log:

2020-01-08T17:48:40  Welcome, you are now connected to log-streaming service. The default timeout is 2 hours. Change the timeout with the App Setting SCM_LOGSTREAM_TIMEOUT (in seconds). 
2020-01-08T17:48:52.736 [Information] Executing 'Functions.extractor' (Reason='New ServiceBus message detected on 'packageextraction'.', Id=06b788e4-d825-45ea-8c14-ed6f113f5372)
2020-01-08T17:48:52.746 [Information] Trigger Details: MessageId: 1147eda24e494df787826e3262e5b238, DeliveryCount: 1, EnqueuedTime: 1/8/2020 5:48:52 PM, LockedUntil: 1/8/2020 5:49:22 PM
2020-01-08T17:48:52.736 [Information] Executing 'Functions.extractor' (Reason='New ServiceBus message detected on 'packageextraction'.', Id=06b788e4-d825-45ea-8c14-ed6f113f5372)
2020-01-08T17:48:52.746 [Information] Trigger Details: MessageId: 1147eda24e494df787826e3262e5b238, DeliveryCount: 1, EnqueuedTime: 1/8/2020 5:48:52 PM, LockedUntil: 1/8/2020 5:49:22 PM
2020-01-08T17:48:55.454 [Information] DEBUG: About to start processing of package ID 14
2020-01-08T17:48:55.245 [Information] Wed, 08 Jan 2020 17:48:55 GMT sequelize deprecated String based operators are now deprecated. Please use Symbol based operators for better security, read more at http://docs.sequelizejs.com/manual/tutorial/querying.html#operators at node_modules\sequelize\lib\sequelize.js:245:13
2020-01-08T17:48:55.454 [Information] DEBUG: About to start processing of package ID 14
2020-01-08T17:48:55.457 [Information] Wed, 08 Jan 2020 17:48:55 GMT tedious deprecated The "config.userName" property is deprecated and future tedious versions will no longer support it. Please switch to using the new "config.authentication" property instead. at node_modules\sequelize\lib\dialects\mssql\connection-manager.js:70:26
2020-01-08T17:48:55.457 [Information] Wed, 08 Jan 2020 17:48:55 GMT tedious deprecated The "config.password" property is deprecated and future tedious versions will no longer support it. Please switch to using the new "config.authentication" property instead. at node_modules\sequelize\lib\dialects\mssql\connection-manager.js:70:26
2020-01-08T17:48:56.581 [Information] DEBUG: About to download package 'Verizon package.tar.gz' from storage
2020-01-08T17:48:56.933 [Information] DEBUG: About to start the extraction of data from 'Verizon package.tar.gz'
2020-01-08T17:48:56.083 [Information] Executing (default): SELECT [id], [packageName], [storagePath] FROM [support_package] AS [support_package] WHERE [support_package].[id] = 14;
2020-01-08T17:48:56.146 [Information] Executing (default): UPDATE [support_package] SET [status]=N'Extracting',[updated_at]=N'2020-01-08 17:48:56.107 +00:00' OUTPUT INSERTED.* WHERE [id] = 14
2020-01-08T17:48:56.580 [Information] DEBUG: About to download package 'Verizon package.tar.gz' from storage
2020-01-08T17:48:56.933 [Information] DEBUG: About to start the extraction of data from 'Verizon package.tar.gz'
2020-01-08T17:49:19.469 [Information] Executing HttpStatusCodeResult, setting HTTP status code 200
2020-01-08T17:49:19.553 [Information] Executing HttpStatusCodeResult, setting HTTP status code 200
2020-01-08T17:49:29.229 [Information] Executing HttpStatusCodeResult, setting HTTP status code 200
2020-01-08T17:49:29.924 [Information] Executing HttpStatusCodeResult, setting HTTP status code 200
2020-01-08T17:49:39.549 [Information] Executing HttpStatusCodeResult, setting HTTP status code 200
2020-01-08T17:49:40.574 [Information] Executing HttpStatusCodeResult, setting HTTP status code 200
2020-01-08T17:49:43.281 [Information] Initializing Warmup Extension.
2020-01-08T17:49:43.456 [Information] Initializing Host. OperationId: '2ed243da-191e-47b0-8097-6f60b1213468'.
2020-01-08T17:49:43.465 [Information] Host initialization: ConsecutiveErrors=0, StartupCount=1, OperationId=2ed243da-191e-47b0-8097-6f60b1213468
2020-01-08T17:49:43.498 [Information] ApplicationInsightsLoggerOptions
{
  "SamplingSettings": {
    "EvaluationInterval": "00:00:15",
    "InitialSamplingPercentage": 100.0,
    "MaxSamplingPercentage": 100.0,
    "MaxTelemetryItemsPerSecond": 20.0,
    "MinSamplingPercentage": 0.1,
    "MovingAverageRatio": 0.25,
    "SamplingPercentageDecreaseTimeout": "00:02:00",
    "SamplingPercentageIncreaseTimeout": "00:15:00"
  },
  "SamplingExcludedTypes": null,
  "SamplingIncludedTypes": null,
  "SnapshotConfiguration": null,
  "EnablePerformanceCountersCollection": true,
  "HttpAutoCollectionOptions": {
    "EnableHttpTriggerExtendedInfoCollection": true,
    "EnableW3CDistributedTracing": true,
    "EnableResponseHeaderInjection": true
  },
  "LiveMetricsInitializationDelay": "00:00:15",
  "EnableLiveMetrics": true,
  "EnableDependencyTracking": true
}
2020-01-08T17:49:43.498 [Information] LoggerFilterOptions
{
  "MinLevel": "None",
  "Rules": [
    {
      "ProviderName": null,
      "CategoryName": null,
      "LogLevel": null,
      "Filter": "<AddFilter>b__0"
    },
    {
      "ProviderName": null,
      "CategoryName": null,
      "LogLevel": "Information",
      "Filter": null
    },
    {
      "ProviderName": "Microsoft.Azure.WebJobs.Script.WebHost.Diagnostics.SystemLoggerProvider",
      "CategoryName": null,
      "LogLevel": "None",
      "Filter": null
    },
    {
      "ProviderName": "Microsoft.Azure.WebJobs.Script.WebHost.Diagnostics.SystemLoggerProvider",
      "CategoryName": null,
      "LogLevel": null,
      "Filter": "<AddFilter>b__0"
    },
    {
      "ProviderName": "Microsoft.Azure.WebJobs.Logging.ApplicationInsights.ApplicationInsightsLoggerProvider",
      "CategoryName": null,
      "LogLevel": "Trace",
      "Filter": null
    }
  ]
}
2020-01-08T17:49:43.498 [Information] LoggerFilterOptions
{
  "MinLevel": "None",
  "Rules": [
    {
      "ProviderName": null,
      "CategoryName": null,
      "LogLevel": null,
      "Filter": "<AddFilter>b__0"
    },
    {
      "ProviderName": null,
      "CategoryName": null,
      "LogLevel": "Information",
      "Filter": null
    },
    {
      "ProviderName": "Microsoft.Azure.WebJobs.Script.WebHost.Diagnostics.SystemLoggerProvider",
      "CategoryName": null,
      "LogLevel": "None",
      "Filter": null
    },
    {
      "ProviderName": "Microsoft.Azure.WebJobs.Script.WebHost.Diagnostics.SystemLoggerProvider",
      "CategoryName": null,
      "LogLevel": null,
      "Filter": "<AddFilter>b__0"
    },
    {
      "ProviderName": "Microsoft.Azure.WebJobs.Logging.ApplicationInsights.ApplicationInsightsLoggerProvider",
      "CategoryName": null,
      "LogLevel": "Trace",
      "Filter": null
    }
  ]
}
2020-01-08T17:49:43.499 [Information] FunctionResultAggregatorOptions
{
  "BatchSize": 1000,
  "FlushTimeout": "00:00:30",
  "IsEnabled": true
}
2020-01-08T17:49:43.499 [Information] SingletonOptions
{
  "LockPeriod": "00:00:15",
  "ListenerLockPeriod": "00:00:15",
  "LockAcquisitionTimeout": "10675199.02:48:05.4775807",
  "LockAcquisitionPollingInterval": "00:00:05",
  "ListenerLockRecoveryPollingInterval": "00:01:00"
}
2020-01-08T17:49:43.505 [Information] ServiceBusOptions
{
  "PrefetchCount": 0,
  "MessageHandlerOptions": {
    "AutoComplete": true,
    "MaxAutoRenewDuration": "00:05:00",
    "MaxConcurrentCalls": 16
  }
}
2020-01-08T17:49:43.505 [Information] HttpOptions
{
  "DynamicThrottlesEnabled": true,
  "MaxConcurrentRequests": 100,
  "MaxOutstandingRequests": 200,
  "RoutePrefix": ""
}
2020-01-08T17:49:43.509 [Information] Starting JobHost
2020-01-08T17:49:43.518 [Information] Starting Host (HostId=f5forensics-processor, InstanceId=dae384a5-dd14-4e6a-97e1-de8b1e0dabab, Version=2.0.12888.0, ProcessId=6668, AppDomainId=1, InDebugMode=True, InDiagnosticMode=False, FunctionsExtensionVersion=~2)
2020-01-08T17:49:43.557 [Information] Loading functions metadata
2020-01-08T17:49:43.588 [Information] 2 functions loaded
2020-01-08T17:49:44.068 [Information] Generating 2 job function(s)
2020-01-08T17:49:44.235 [Information] Found the following functions:
Host.Functions.extractor
Host.Functions.heartbeat
2020-01-08T17:49:44.354 [Information] Initializing function HTTP routes
Mapped function route '/heartbeat' [get] to 'heartbeat'
2020-01-08T17:49:44.363 [Information] Host initialized (829ms)
2020-01-08T17:49:44.384 [Information] Host started (858ms)
2020-01-08T17:49:44.384 [Information] Job host started
2020-01-08T17:49:50.225 [Information] Executing HttpStatusCodeResult, setting HTTP status code 200
2020-01-08T17:49:50.320 [Information] Executing HttpStatusCodeResult, setting HTTP status code 200
2020-01-08T17:49:51.863 [Information] Executing HttpStatusCodeResult, setting HTTP status code 200
2020-01-08T17:50:00.164 [Information] Initializing Warmup Extension.
2020-01-08T17:50:00.355 [Information] Initializing Host. OperationId: '44efec11-5e91-4664-ba42-dad20338a04d'.
2020-01-08T17:50:00.364 [Information] Host initialization: ConsecutiveErrors=0, StartupCount=1, OperationId=44efec11-5e91-4664-ba42-dad20338a04d
2020-01-08T17:50:00.405 [Information] ApplicationInsightsLoggerOptions
{
  "SamplingSettings": {
    "EvaluationInterval": "00:00:15",
    "InitialSamplingPercentage": 100.0,
    "MaxSamplingPercentage": 100.0,
    "MaxTelemetryItemsPerSecond": 20.0,
    "MinSamplingPercentage": 0.1,
    "MovingAverageRatio": 0.25,
    "SamplingPercentageDecreaseTimeout": "00:02:00",
    "SamplingPercentageIncreaseTimeout": "00:15:00"
  },
  "SamplingExcludedTypes": null,
  "SamplingIncludedTypes": null,
  "SnapshotConfiguration": null,
  "EnablePerformanceCountersCollection": true,
  "HttpAutoCollectionOptions": {
    "EnableHttpTriggerExtendedInfoCollection": true,
    "EnableW3CDistributedTracing": true,
    "EnableResponseHeaderInjection": true
  },
  "LiveMetricsInitializationDelay": "00:00:15",
  "EnableLiveMetrics": true,
  "EnableDependencyTracking": true
}
2020-01-08T17:50:00.406 [Information] LoggerFilterOptions
{
  "MinLevel": "None",
  "Rules": [
    {
      "ProviderName": null,
      "CategoryName": null,
      "LogLevel": null,
      "Filter": "<AddFilter>b__0"
    },
    {
      "ProviderName": null,
      "CategoryName": null,
      "LogLevel": "Information",
      "Filter": null
    },
    {
      "ProviderName": "Microsoft.Azure.WebJobs.Script.WebHost.Diagnostics.SystemLoggerProvider",
      "CategoryName": null,
      "LogLevel": "None",
      "Filter": null
    },
    {
      "ProviderName": "Microsoft.Azure.WebJobs.Script.WebHost.Diagnostics.SystemLoggerProvider",
      "CategoryName": null,
      "LogLevel": null,
      "Filter": "<AddFilter>b__0"
    },
    {
      "ProviderName": "Microsoft.Azure.WebJobs.Logging.ApplicationInsights.ApplicationInsightsLoggerProvider",
      "CategoryName": null,
      "LogLevel": "Trace",
      "Filter": null
    }
  ]
}
2020-01-08T17:50:00.406 [Information] LoggerFilterOptions
{
  "MinLevel": "None",
  "Rules": [
    {
      "ProviderName": null,
      "CategoryName": null,
      "LogLevel": null,
      "Filter": "<AddFilter>b__0"
    },
    {
      "ProviderName": null,
      "CategoryName": null,
      "LogLevel": "Information",
      "Filter": null
    },
    {
      "ProviderName": "Microsoft.Azure.WebJobs.Script.WebHost.Diagnostics.SystemLoggerProvider",
      "CategoryName": null,
      "LogLevel": "None",
      "Filter": null
    },
    {
      "ProviderName": "Microsoft.Azure.WebJobs.Script.WebHost.Diagnostics.SystemLoggerProvider",
      "CategoryName": null,
      "LogLevel": null,
      "Filter": "<AddFilter>b__0"
    },
    {
      "ProviderName": "Microsoft.Azure.WebJobs.Logging.ApplicationInsights.ApplicationInsightsLoggerProvider",
      "CategoryName": null,
      "LogLevel": "Trace",
      "Filter": null
    }
  ]
}
2020-01-08T17:50:00.406 [Information] FunctionResultAggregatorOptions
{
  "BatchSize": 1000,
  "FlushTimeout": "00:00:30",
  "IsEnabled": true
}
2020-01-08T17:50:00.407 [Information] SingletonOptions
{
  "LockPeriod": "00:00:15",
  "ListenerLockPeriod": "00:00:15",
  "LockAcquisitionTimeout": "10675199.02:48:05.4775807",
  "LockAcquisitionPollingInterval": "00:00:05",
  "ListenerLockRecoveryPollingInterval": "00:01:00"
}
2020-01-08T17:50:00.407 [Information] ServiceBusOptions
{
  "PrefetchCount": 0,
  "MessageHandlerOptions": {
    "AutoComplete": true,
    "MaxAutoRenewDuration": "00:05:00",
    "MaxConcurrentCalls": 16
  }
}
2020-01-08T17:50:00.412 [Information] HttpOptions
{
  "DynamicThrottlesEnabled": true,
  "MaxConcurrentRequests": 100,
  "MaxOutstandingRequests": 200,
  "RoutePrefix": ""
}
2020-01-08T17:50:00.486 [Information] Executing HttpStatusCodeResult, setting HTTP status code 200
2020-01-08T17:50:00.421 [Information] Starting JobHost
2020-01-08T17:50:00.425 [Information] Starting Host (HostId=f5forensics-processor, InstanceId=108665e8-836d-4ffe-9eaf-2f6e70a378e6, Version=2.0.12888.0, ProcessId=6988, AppDomainId=1, InDebugMode=True, InDiagnosticMode=False, FunctionsExtensionVersion=~2)
2020-01-08T17:50:00.459 [Information] Loading functions metadata
2020-01-08T17:50:00.514 [Information] 2 functions loaded
2020-01-08T17:50:01.083 [Information] Generating 2 job function(s)
2020-01-08T17:50:01.260 [Information] Found the following functions:
Host.Functions.extractor
Host.Functions.heartbeat
2020-01-08T17:50:01.573 [Information] Initializing function HTTP routes
Mapped function route '/heartbeat' [get] to 'heartbeat'
2020-01-08T17:50:01.582 [Information] Host initialized (1142ms)
2020-01-08T17:50:01.609 [Information] Host started (1177ms)
2020-01-08T17:50:01.609 [Information] Job host started
2020-01-08T17:50:04.352 [Information] Initializing Warmup Extension.
2020-01-08T17:50:04.440 [Information] Initializing Host. OperationId: '62eb3013-bbfd-4987-9d41-d15ed8ee48d1'.
2020-01-08T17:50:04.449 [Information] Host initialization: ConsecutiveErrors=0, StartupCount=1, OperationId=62eb3013-bbfd-4987-9d41-d15ed8ee48d1
2020-01-08T17:50:04.480 [Information] ApplicationInsightsLoggerOptions
{
  "SamplingSettings": {
    "EvaluationInterval": "00:00:15",
    "InitialSamplingPercentage": 100.0,
    "MaxSamplingPercentage": 100.0,
    "MaxTelemetryItemsPerSecond": 20.0,
    "MinSamplingPercentage": 0.1,
    "MovingAverageRatio": 0.25,
    "SamplingPercentageDecreaseTimeout": "00:02:00",
    "SamplingPercentageIncreaseTimeout": "00:15:00"
  },
  "SamplingExcludedTypes": null,
  "SamplingIncludedTypes": null,
  "SnapshotConfiguration": null,
  "EnablePerformanceCountersCollection": true,
  "HttpAutoCollectionOptions": {
    "EnableHttpTriggerExtendedInfoCollection": true,
    "EnableW3CDistributedTracing": true,
    "EnableResponseHeaderInjection": true
  },
  "LiveMetricsInitializationDelay": "00:00:15",
  "EnableLiveMetrics": true,
  "EnableDependencyTracking": true
}
2020-01-08T17:50:04.481 [Information] LoggerFilterOptions
{
  "MinLevel": "None",
  "Rules": [
    {
      "ProviderName": null,
      "CategoryName": null,
      "LogLevel": null,
      "Filter": "<AddFilter>b__0"
    },
    {
      "ProviderName": null,
      "CategoryName": null,
      "LogLevel": "Information",
      "Filter": null
    },
    {
      "ProviderName": "Microsoft.Azure.WebJobs.Script.WebHost.Diagnostics.SystemLoggerProvider",
      "CategoryName": null,
      "LogLevel": "None",
      "Filter": null
    },
    {
      "ProviderName": "Microsoft.Azure.WebJobs.Script.WebHost.Diagnostics.SystemLoggerProvider",
      "CategoryName": null,
      "LogLevel": null,
      "Filter": "<AddFilter>b__0"
    },
    {
      "ProviderName": "Microsoft.Azure.WebJobs.Logging.ApplicationInsights.ApplicationInsightsLoggerProvider",
      "CategoryName": null,
      "LogLevel": "Trace",
      "Filter": null
    }
  ]
}
2020-01-08T17:50:04.481 [Information] LoggerFilterOptions
{
  "MinLevel": "None",
  "Rules": [
    {
      "ProviderName": null,
      "CategoryName": null,
      "LogLevel": null,
      "Filter": "<AddFilter>b__0"
    },
    {
      "ProviderName": null,
      "CategoryName": null,
      "LogLevel": "Information",
      "Filter": null
    },
    {
      "ProviderName": "Microsoft.Azure.WebJobs.Script.WebHost.Diagnostics.SystemLoggerProvider",
      "CategoryName": null,
      "LogLevel": "None",
      "Filter": null
    },
    {
      "ProviderName": "Microsoft.Azure.WebJobs.Script.WebHost.Diagnostics.SystemLoggerProvider",
      "CategoryName": null,
      "LogLevel": null,
      "Filter": "<AddFilter>b__0"
    },
    {
      "ProviderName": "Microsoft.Azure.WebJobs.Logging.ApplicationInsights.ApplicationInsightsLoggerProvider",
      "CategoryName": null,
      "LogLevel": "Trace",
      "Filter": null
    }
  ]
}
2020-01-08T17:50:04.482 [Information] FunctionResultAggregatorOptions
{
  "BatchSize": 1000,
  "FlushTimeout": "00:00:30",
  "IsEnabled": true
}
2020-01-08T17:50:04.482 [Information] SingletonOptions
{
  "LockPeriod": "00:00:15",
  "ListenerLockPeriod": "00:00:15",
  "LockAcquisitionTimeout": "10675199.02:48:05.4775807",
  "LockAcquisitionPollingInterval": "00:00:05",
  "ListenerLockRecoveryPollingInterval": "00:01:00"
}
2020-01-08T17:50:04.482 [Information] ServiceBusOptions
{
  "PrefetchCount": 0,
  "MessageHandlerOptions": {
    "AutoComplete": true,
    "MaxAutoRenewDuration": "00:05:00",
    "MaxConcurrentCalls": 16
  }
}
2020-01-08T17:50:04.482 [Information] HttpOptions
{
  "DynamicThrottlesEnabled": true,
  "MaxConcurrentRequests": 100,
  "MaxOutstandingRequests": 200,
  "RoutePrefix": ""
}
2020-01-08T17:50:04.493 [Information] Starting JobHost
2020-01-08T17:50:04.502 [Information] Starting Host (HostId=f5forensics-processor, InstanceId=6e0abee5-6132-4d60-9179-6fc1618a659f, Version=2.0.12888.0, ProcessId=5568, AppDomainId=1, InDebugMode=True, InDiagnosticMode=False, FunctionsExtensionVersion=~2)
2020-01-08T17:50:04.540 [Information] Loading functions metadata
2020-01-08T17:50:04.572 [Information] 2 functions loaded
2020-01-08T17:50:04.977 [Information] Generating 2 job function(s)
2020-01-08T17:50:05.095 [Information] Found the following functions:
Host.Functions.extractor
Host.Functions.heartbeat
2020-01-08T17:50:05.202 [Information] Initializing function HTTP routes
Mapped function route '/heartbeat' [get] to 'heartbeat'
2020-01-08T17:50:05.204 [Information] Host initialized (692ms)
2020-01-08T17:50:05.225 [Information] Host started (715ms)
2020-01-08T17:50:05.225 [Information] Job host started
2020-01-08T17:50:10.911 [Information] Executing HttpStatusCodeResult, setting HTTP status code 200
2020-01-08T17:50:11.130 [Information] Executing HttpStatusCodeResult, setting HTTP status code 200
2020-01-08T17:50:10.706 [Information] Executing HttpStatusCodeResult, setting HTTP status code 200
2020-01-08T17:50:11.189 [Information] Executing HttpStatusCodeResult, setting HTTP status code 200
2020-01-08T17:50:13.797 [Information] Executing HttpStatusCodeResult, setting HTTP status code 200
2020-01-08T17:50:21.430 [Information] Executing HttpStatusCodeResult, setting HTTP status code 200

The job host just keeps re-initializing, presumably pausing the execution of my function already in progress. Eventually my function completes but quite a while later for what should be a fairly quick operation. I have looked through Application Insights and I see nothing that would indicate why it’s happening. My function is able to complete its work within the 10 minute max timeout I’ve specified in host.json.

Definitely seems like a real issue.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Azure function host stops automatically and doesn't restart
I've seen in multiple Azure function apps that the host is stopping on a regular basis and automatically restarting.
Read more >
Azure function app host restarting multiple times between ...
When the function app is triggered, I can see from logs that the host is initialized and started multiple times between the execution....
Read more >
Azure function host restarting : r/AZURE
What I am trying to understand is, what is causing the host to restart? Certain events, that can cause it to restart are...
Read more >
Mixed-Signal Embedded Systems Design: A Hands-on Guide to ...
Bootloadable_SetActiveApplication—Sets the application which will be loaded after a next reset event. 15.96.2 Bootloader Function Calls 1.60 • void ...
Read more >
Building Node Applications with MongoDB and Backbone: Rapid ...
I try to avoid having environment-specific functionality wherever practical. ... same application because every developer has a preference for their host ...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found