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

Dedicated SAP CloudLogging support by API #1648

Open
7 tasks
a-thaler opened this issue Dec 2, 2024 · 0 comments
Open
7 tasks

Dedicated SAP CloudLogging support by API #1648

a-thaler opened this issue Dec 2, 2024 · 0 comments
Labels
area/manager Manager or module changes kind/feature Categorizes issue or PR as related to a new feature.

Comments

@a-thaler
Copy link
Collaborator

a-thaler commented Dec 2, 2024

Description
The main usage scenario for the telemetry module is the integration with SAP CloudLogging via ServiceBindings. Hereby, the user needs to integrate using the generated secret. That approach has several challenges:

  • The user needs to understand the content of the secret just to configure the telemetry pipelines, afterwards he will not touch it anymore
  • The user need to understand the the secret rotation policy of Cloud Logging to configure the proper values in the ServiceBinding
  • The user need to apply the Kyma Dashboard integration manually

Goal: Simplify this standard integration from user perspective by introducing a dedicated CloudLogging API which will work only in combination with a CloudLogging ServiceBinding, so that a user can make less mistakes and need to care less about specificas

Benefits:

  • Less configuration: the API requires only the namespace and name of the ServiceBinding
  • Good Guidance: If the binding does not match the criterias, well defined errors for the scenario are provided (wrong serviceInstance, wrong secret rotation, no OTLP ingestion)
  • Less knowledge: The attributes of the generated secret will be selected for the settings by the telemetry module, not by the user
  • Better compatibility: If CloudLogging will change attributes, the telemetry module can adopt without that the user knows
  • Better agent setup for backend setup: the agents could get configured with a different QoS in case of a "dev" plan usage
  • Better usability: A managed Kyma dashboard configuration can be provided

Criterias

  • A user can reference a ServiceBinding to a CloudLogging instance, so that an auto-configuration of the pipeline will happen (secret mapping without users knowledge)
  • If the ServiceBinding does not fullfil the criterias for an auto-CloudLogging integration, a well-defined error gets reported
  • If the BTP Operator module is not installed, there is no chance to get a valid ServiceBinding specified, same as criteria before
  • If a valid binding is configured for the new output, a Kyma Dashboard configuration gets generated by default.
  • If there are multiple pipelines with cloud logging output, links for every output are getting generated using some unique name

API Proposal

apiVersion: telemetry.kyma-project.io/v1alpha1
kind: LogPipeline
metadata:
  name: test
spec:
  input:
    runtime:
      enabled: true
  output:
    sap-cloud-logging:
      serviceBindingRef:
        name: myName
        namespace: myNs
      dashboard:
        enabled: true
        alias: SAP Cloud Logging

Tasks

  • Preparation
    • Come up with a test concept
  • Implementation
    • Have a new API which generates the config out of a ServiceBinding, no further validation
    • Realize all typical validations: proper ServiceInstance, proper status of Instance and Binding, proper service params (OTLP ingest)
    • Have e2e tests in placer
    • Managed Dashboard integration
@a-thaler a-thaler added kind/feature Categorizes issue or PR as related to a new feature. area/manager Manager or module changes labels Dec 2, 2024
@a-thaler a-thaler changed the title Dedicated SAP CLoudLogging support by API Dedicated SAP CloudLogging support by API Dec 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/manager Manager or module changes kind/feature Categorizes issue or PR as related to a new feature.
Projects
None yet
Development

No branches or pull requests

1 participant