-
Notifications
You must be signed in to change notification settings - Fork 281
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ServerTelemetryChannel stores telemetry data in default folder during transient errors in non-windows environments] #1860
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I also wonder what would happend if multiple dotnetcore apps run in same linux machine under same user? will they store in same folder and cause collision/other issues?
BASE/src/ServerTelemetryChannel/Managed/Shared/Implementation/NonWindowsIdentityProvider.cs
Outdated
Show resolved
Hide resolved
BASE/src/ServerTelemetryChannel/Implementation/ApplicationFolderProvider.cs
Outdated
Show resolved
Hide resolved
BASE/src/ServerTelemetryChannel/Managed/Shared/Implementation/NonWindowsIdentityProvider.cs
Outdated
Show resolved
Hide resolved
For application isolation we create folder name with hash of process identity+folder path, so it won't cause collision. |
…ApplicationInsights-dotnet into rajrang/storagefolder
Fix Issue #1792
Proposal
For the application running in Linux or MacOS,
ServerTelemetryChannel
doesn’t automatically create a local storage folder to keep telemetry temporarily if there are network issues. Channel should be configured to use local folder to avoid telemetry data loss.To fix this issue in non-windows environment, following folder locations have been identified to create a storage folder automatically to store telemetry data.
${TMPDIR}
, if${TMPDIR}
environment variable is set; otherwise,/var/tmp
if that exists; otherwise,/tmp
if that exists; otherwise no storage folder is used.In Windows, SDK creates a storage folder in %LOCALAPPDATA% or %TEMP% and restricts access to Current User and Administrators.
Checklist
For significant contributions please make sure you have completed the following items:
The PR will trigger build, unit tests, and functional tests automatically. Please follow these instructions to build and test locally.
Notes for authors:
Notes for reviewers:
/AzurePipelines run
will queue all builds/AzurePipelines run <pipeline-name>
will queue a specific build