How do I do progressive delivery for Metrics vs logs vs traces with Argo CD?

Progressive delivery is a modern software deployment approach that allows you to release features gradually while ensuring system stability and user satisfaction. This is important for key observability components like metrics, logs, and traces. In this guide, we will explore how to implement progressive delivery for these components using Argo CD.
progressive delivery, metrics, logs, traces, Argo CD, observability, software deployment, feature flags
// Example of using Argo CD for progressive delivery apiVersion: argoproj.io/v1alpha1 kind: Application metadata: name: my-app namespace: argocd spec: destination: name: my-cluster namespace: production source: repoURL: 'https://github.com/your-org/my-app.git' targetRevision: HEAD path: manifests syncPolicy: automated: prune: true selfHeal: true syncOptions: - ApplyOutOfScope=true progressiveDelivery: strategies: - name: metrics weight: 10 // 10% of traffic to the new metrics service - name: logs weight: 20 // 20% of traffic to the new logs service - name: traces weight: 30 // 30% of traffic to the new traces service

progressive delivery metrics logs traces Argo CD observability software deployment feature flags