app_attributes.h 3.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. /*
  2. * Copyright The OpenTelemetry Authors
  3. * SPDX-License-Identifier: Apache-2.0
  4. */
  5. /*
  6. * DO NOT EDIT, this is an Auto-generated file from:
  7. * buildscripts/semantic-convention/templates/registry/semantic_attributes-h.j2
  8. */
  9. #pragma once
  10. #include "opentelemetry/common/macros.h"
  11. #include "opentelemetry/version.h"
  12. OPENTELEMETRY_BEGIN_NAMESPACE
  13. namespace semconv
  14. {
  15. namespace app
  16. {
  17. /**
  18. A unique identifier representing the installation of an application on a specific device
  19. <p>
  20. Its value SHOULD persist across launches of the same application installation, including through
  21. application upgrades. It SHOULD change if the application is uninstalled or if all applications of
  22. the vendor are uninstalled. Additionally, users might be able to reset this value (e.g. by
  23. clearing application data). If an app is installed multiple times on the same device (e.g. in
  24. different accounts on Android), each @code app.installation.id @endcode SHOULD have a different
  25. value. If multiple OpenTelemetry SDKs are used within the same application, they SHOULD use the
  26. same value for @code app.installation.id @endcode. Hardware IDs (e.g. serial number, IMEI, MAC
  27. address) MUST NOT be used as the @code app.installation.id @endcode. <p> For iOS, this value
  28. SHOULD be equal to the <a
  29. href="https://developer.apple.com/documentation/uikit/uidevice/identifierforvendor">vendor
  30. identifier</a>. <p> For Android, examples of @code app.installation.id @endcode implementations
  31. include: <ul> <li><a
  32. href="https://firebase.google.com/docs/projects/manage-installations">Firebase Installation
  33. ID</a>.</li> <li>A globally unique UUID which is persisted across sessions in your
  34. application.</li> <li><a href="https://developer.android.com/identity/app-set-id">App set
  35. ID</a>.</li> <li><a
  36. href="https://developer.android.com/reference/android/provider/Settings.Secure#ANDROID_ID">@code
  37. Settings.getString(Settings.Secure.ANDROID_ID) @endcode</a>.</li>
  38. </ul>
  39. <p>
  40. More information about Android identifier best practices can be found <a
  41. href="https://developer.android.com/training/articles/user-data-ids">here</a>.
  42. */
  43. static constexpr const char *kAppInstallationId = "app.installation.id";
  44. /**
  45. The x (horizontal) coordinate of a screen coordinate, in screen pixels.
  46. */
  47. static constexpr const char *kAppScreenCoordinateX = "app.screen.coordinate.x";
  48. /**
  49. The y (vertical) component of a screen coordinate, in screen pixels.
  50. */
  51. static constexpr const char *kAppScreenCoordinateY = "app.screen.coordinate.y";
  52. /**
  53. An identifier that uniquely differentiates this widget from other widgets in the same application.
  54. <p>
  55. A widget is an application component, typically an on-screen visual GUI element.
  56. */
  57. static constexpr const char *kAppWidgetId = "app.widget.id";
  58. /**
  59. The name of an application widget.
  60. <p>
  61. A widget is an application component, typically an on-screen visual GUI element.
  62. */
  63. static constexpr const char *kAppWidgetName = "app.widget.name";
  64. } // namespace app
  65. } // namespace semconv
  66. OPENTELEMETRY_END_NAMESPACE