Skip to content
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

Add OpenTelemetry .NET instrumentation docs #3150

Closed
theletterf opened this issue Aug 10, 2023 · 4 comments
Closed

Add OpenTelemetry .NET instrumentation docs #3150

theletterf opened this issue Aug 10, 2023 · 4 comments
Labels
enhancement New feature or request IA Information architecture rework

Comments

@theletterf
Copy link
Member

@Kielek and I want to port the docs in https://github.com/open-telemetry/opentelemetry-dotnet-instrumentation/tree/main/docs to https://opentelemetry.io/docs/instrumentation/net/automatic/.

We discussed this briefly with @svrnm. Some data points:

I'd be happy to help with this!

@theletterf theletterf added the bug Something isn't working label Aug 10, 2023
@chalin chalin added enhancement New feature or request and removed bug Something isn't working labels Aug 10, 2023
@svrnm
Copy link
Member

svrnm commented Aug 10, 2023

Thanks for raising this issue @theletterf & @Kielek. @open-telemetry/docs-approvers please take a look and comment as well.

A few additional thoughts:

  • Java already has some subpages for Automatic, in a similar way pages about Configuration, Plugins, etc could live here
  • Redoing the Getting Started with the Demo App is for me the biggest win to end-users. I think that some content of some pages could also be incorporated into that (e.g. log-trace-correlation, see the Java Getting Started which outputs some logs already)
  • For some pages we need to discuss if they should be moved or remain in the opentelemetry-dotnet-instrumentation repository, i.e. "developing", "design" and other documents which have contributors as audience.

As an independent side-note: If I look at Java & .NET, Python, ... automatic instrumentation there are some things that are kind of the same thing but use different wording, e.g. Java has "extensions", .NET has "plugins" or environment variables to enable certain instrumentation libraries (OTEL_DOTNET_AUTO_[TRACES|METRICS|LOGS]_INSTRUMENTATIONS_ENABLED vs OTEL_PYTHON_DJANGO_INSTRUMENT vs OTEL_INSTRUMENTATION_[NAME]_ENABLED), etc. Although those are language specific, this is highly confusing to users with multi-language environments, so it would be good to create some consistency here as well

@theletterf
Copy link
Member Author

I think we can close the issue now!

@junaid-git
Copy link

junaid-git commented Dec 25, 2023

Hi, I followed your documentation to add auto instrumentation https://opentelemetry.io/docs/instrumentation/net/automatic/nuget-packages/

Executing this command "instrument.cmd Adp.ProductStore.Client.exe" throws the following issue. Any idea on the same please?

Fatal error. System.AccessViolationException: Attempted to read or write protected memory. This is often an indication that other memory is corrupt.
Repeat 2 times:

at OpenTelemetry.AutoInstrumentation.NativeMethods+Windows.AddInstrumentations(System.String, OpenTelemetry.AutoInstrumentation.NativeCallTargetDefinition[], Int32)

at OpenTelemetry.AutoInstrumentation.NativeMethods.AddInstrumentations(System.String, OpenTelemetry.AutoInstrumentation.NativeCallTargetDefinition[])
at OpenTelemetry.AutoInstrumentation.Instrumentation.RegisterBytecodeInstrumentations(Payload)
at OpenTelemetry.AutoInstrumentation.Instrumentation.Initialize()
at System.RuntimeMethodHandle.InvokeMethod(System.Object, System.Span1<System.Object> ByRef, System.Signature, Boolean, Boolean) at System.Reflection.RuntimeMethodInfo.Invoke(System.Object, System.Reflection.BindingFlags, System.Reflection.Binder, System.Object[], System.Globalization.CultureInfo) at System.Reflection.MethodBase.Invoke(System.Object, System.Object[]) at OpenTelemetry.AutoInstrumentation.Loader.Loader.TryLoadManagedAssembly() at OpenTelemetry.AutoInstrumentation.Loader.Loader..cctor() at OpenTelemetry.AutoInstrumentation.Loader.Loader..ctor() at System.RuntimeType.CreateInstanceDefaultCtor(Boolean, Boolean) at System.Activator.CreateInstance(System.Type, Boolean, Boolean) at System.RuntimeType.CreateInstanceImpl(System.Reflection.BindingFlags, System.Reflection.Binder, System.Object[], System.Globalization.CultureInfo) at System.Activator.CreateInstance(System.Type, System.Reflection.BindingFlags, System.Reflection.Binder, System.Object[], System.Globalization.CultureInfo, System.Object[]) at System.Reflection.Assembly.CreateInstance(System.String, Boolean, System.Reflection.BindingFlags, System.Reflection.Binder, System.Object[], System.Globalization.CultureInfo, System.Object[]) at System.Reflection.Assembly.CreateInstance(System.String) at StartupHook.Initialize() at System.RuntimeMethodHandle.InvokeMethod(System.Object, System.Span1<System.Object> ByRef, System.Signature, Boolean, Boolean)
at System.Reflection.RuntimeMethodInfo.Invoke(System.Object, System.Reflection.BindingFlags, System.Reflection.Binder, System.Object[], System.Globalization.CultureInfo)
at System.StartupHookProvider.CallStartupHook(StartupHookNameOrPath)
at System.StartupHookProvider.ProcessStartupHooks()

@Kielek
Copy link
Contributor

Kielek commented Dec 27, 2023

@chalin chalin added the IA Information architecture rework label Jun 14, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request IA Information architecture rework
Projects
None yet
Development

No branches or pull requests

5 participants