- Yes, the .NET version that a function app uses is present in the <TargetFramework></TargetFramework> tag of the csproj file.
- As of now, there is no official support for .NET 8 in Azure Functions. However, Microsoft is working on adding support for .NET 8 to Azure Functions. They have not yet announced a release date, but it is expected to be available before the .NET 6 expiry date for function apps.
- The decision to move an in-progress function app to an isolated worker process depends on the specific needs of the app. Generally, if your app requires more control over the runtime environment or needs to run in a more secure environment, it should be moved to an isolated worker process.
- There may be certain scenarios due to which an in-progress function app can't be migrated to an isolated worker process. For example, if the app relies on certain Azure Functions features that are not supported in the isolated worker process, you may not be able to migrate it. However, in most cases, all in-progress function apps can be migrated to an isolated worker process.
- If you are unable to see the .NET runtime used in your function app, it could be because your app is using the default runtime provided by Azure Functions, which is currently .NET 6. However, if you have explicitly set the .NET runtime version in your function app configuration, you should be able to see it.
- To pass the value of the logger while migrating function apps from .NET 6 to 8, you can use the ILogger interface provided by .NET. You can inject the ILogger instance into your functions and use it to log messages. The ILogger interface has methods for logging messages at different levels, such as Debug, Information, Warning, and Error.
If the above response helps answer your question, remember to "Accept Answer" so that others in the community facing similar issues can easily find the solution. Your contribution is highly appreciated.
hth
Marcin