Azure / Azure/azure-functions-host
(0xE0434352 - CLR Exception) is being logged sometimes after a Host Shutdown has occurred on v2 Runtime.
- Dominant language
- C#
- Stars
- 2k
- Forks
- 482
- Avg merge
- 2d 12h
- Merged PRs (30d)
- 38
Description
#### Investigative information
Please provide the following:
- Timestamp: Reproducible in general but specifically 2018-12-05T19:37 to 2018-12-06T19:37
- Function App version (1.0 or 2.0): 2.0
- Function App name: FinTestFunctionsApps
- Function name(s) (as appropriate):TestFinTimerBlob
- Invocation ID:
- Region:West Europe
#### Repro steps
Provide the steps required to reproduce the problem:
1. Create a Function App with two Functions.
Blob Trigger
public static void Run(Stream myBlob, string name, ILogger log)
{
log.LogInformation($"C# Blob trigger function Processed blob\n Name:{name} \n Size: {myBlob.Length} Bytes");
}
Timer Trigger
using System;
public static void Run(TimerInfo myTimer, out string outputBlob, ILogger log)
{
log.LogInformation($"C# Timer trigger function executed at: {DateTime.Now}");
outputBlob = DateTime.Now.ToString();
}
#### Expected behavior
Provide a description of the expected behavior.
These Functions are running as expected but the Diagnose and Solve blade Application Crashes detector should not show CLR Exceptions on Exit.
#### Actual behavior
Provide a description of the actual behavior observed.
These Functions are running as expected but the Diagnose and Solve blade Application Crashes detector shows CLR Exceptions on Exit. 0xE0434352
#### Known workarounds
Provide a description of any known workarounds.
No Workarounds exist.
#### Related information
Here's an example of the Logs we see
| RoleInstance | MediumDedicatedWebWorkerRole_IN_19
| ExitCode | 0xE0434352
Sample Kusto Query with time frames.(sanitized)
let BT = datetime(2018-11-21T10:00Z);
let ET = datetime(2018-11-21T11:00Z);
let tenantId = "";
let roleId= "MediumDedicatedWebWorkerRole_IN_19";
let appId= "";
AntaresRuntimeWorkerEvents
| where PreciseTimeStamp between (BT .. ET)
| where Tenant =~ tenantId and RoleInstance =~ roleId
| where ApplicationPool =~ '' or ApplicationPool startswith '' or SiteName =~ '' or SiteName startswith ''
| extend Site = strcat(ApplicationPool, SiteName, ApplicationPoolName)
| extend EvtM = iff(EventMessage startswith "[", "", EventMessage)
| extend Log = strcat(EvtM, LogStatement, Details, Message, Exception)
| extend ProcId = iff(JobProcessIDs != "", toint(JobProcessIDs), ProcessId)
| extend Path= strcat(VolumeRootPath, StorageVolumePath, RootPathChosen, DirectoryPath, Path)
| where EventId != 55020 and EventId != 20101 and EventId != 18050 and EventId != 16001 and (EventId < 55560 or EventId > 55567)
| sort by PreciseTimeStamp asc
| project PreciseTimeStamp, Level, EventId, Site, Log, Path, ProcId, ExitCode
PreciseTimeStamp Level EventId Site Log
2018-11-21 10:27:49.9945296 4 15028 Worker Process with PID 108 is being signalled to stop processing its HTTP queue...
2018-11-21 10:27:52.1601093 4 15028 The worker process and any child processes have exited.
2018-11-21 10:27:52.1601150 4 15013 A worker process for the application pool '%1' has terminated unexpectedly. The exit code is '%4'.
PreciseTimeStamp Level EventId Site Log Path ProcId ExitCode
2018-11-21 10:27:52.1601150 4 15013 A worker process for the application pool '%1' has terminated unexpectedly. The exit code is '%4'. 108 -532462766
PreciseTimeStamp Summary
2018-11-21 10:07:40.4957703 Executed 'ResourceCountChecker' (Succeeded, Id=7ebe8e39-0d04-4002-a613-f9b5eb33bbad)
PreciseTimeStamp Source Summary Pid
2018-11-21 10:27:50.0150043 Host.General Host shutdown completed. 108
Contributor guide
Research direction
The report names no repository files, tests, or code entry points. Start by reproducing the two-function C# Blob Trigger and Timer Trigger setup, then correlate the 0xE0434352 exit with the logged “Host shutdown completed” event; done means intentional host shutdowns no longer appear as application crashes.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- azure, csharp
- Domain
- backend, cloud
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 28/100