# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements.  See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership.  The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License.  You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

catalog:
    - name: Welcome
      path: /readme
    - name: Concepts and Designs
      catalog:
        - name: What is SkyWalking Satellite?
          catalog:
            - name: Overview and Core Concepts
              path: /en/concepts-and-designs/overview
            - name: Project Goals
              path: /en/concepts-and-designs/project-goals
        - name: Design
          catalog:
            - name: Module Design
              path: /en/concepts-and-designs/module_design
            - name: Plugin Mechanism
              path: /en/concepts-and-designs/plugin_mechanism
            - name: Project Structure
              path: /en/concepts-and-designs/project_structue
            - name: Memory mapped Queue
              path: /en/concepts-and-designs/mmap-queue
    - name: Setup
      catalog:
        - name: Configuration
          catalog:
            - name: Common Configuration
              path: /en/setup/configuration/common
            - name: Sharing Configuration
              path: /en/setup/configuration/sharing-plugins
            - name: Pipe Configuration
              path: /en/setup/configuration/pipe-plugins
            - name: Override Configuration
              path: /en/setup/configuration/override-settings
        - name: Examples
          catalog:
            - name: Deploy
              catalog:
                - name: Deploy on Linux and Windows
                  path: /en/setup/examples/deploy/linux-windows/readme
                - name: Deploy on Kubernetes
                  path: /en/setup/examples/deploy/kubernetes/readme
            - name: More Use Cases
              catalog:
                - name: Transmit Log to Kafka
                  path: /en/setup/examples/feature/transmit-log-to-kafka/readme
                - name: Enable/Disable Channel
                  path: /en/setup/examples/feature/enable-disable-channel/readme
                - name: Telemetry Exporter
                  path: /en/setup/examples/feature/telemetry-exporter/readme
        - name: Performance
          catalog:
            - name: ALS Load Balance
              path: /en/setup/performance/als-load-balance/readme
        - name: Plugins
          catalog:
            - name: Client
              catalog:
                - name: GRPC Client
                  path: /en/setup/plugins/client_grpc-client
                - name: Kafka Client
                  path: /en/setup/plugins/client_kafka-client
            - name: Fallbacker
              catalog:
                - name: None Fallbacker
                  path: /en/setup/plugins/fallbacker_none-fallbacker
                - name: Timer Fallbacker
                  path: /en/setup/plugins/fallbacker_timer-fallbacker
            - name: Forwarder
              catalog:
                - name: Envoy ALS v2 GRPC Forwarder
                  path: /en/setup/plugins/forwarder_envoy-als-v2-grpc-forwarder
                - name: Envoy ALS v3 GRPC Forwarder
                  path: /en/setup/plugins/forwarder_envoy-als-v3-grpc-forwarder
                - name: Envoy Metrics v2 GRPC Forwarder
                  path: /en/setup/plugins/forwarder_envoy-metrics-v2-grpc-forwarder
                - name: Envoy Metrics v3 GRPC Forwarder
                  path: /en/setup/plugins/forwarder_envoy-metrics-v3-grpc-forwarder
                - name: Native Async Profiler GRPC Forwarder
                  path: /en/setup/plugins/forwarder_native-async-profiler-grpc-forwarder
                - name: Native CDS GRPC Forwarder
                  path: /en/setup/plugins/forwarder_native-cds-grpc-forwarder
                - name: Native CLR GRPC Forwarder
                  path: /en/setup/plugins/forwarder_native-clr-grpc-forwarder
                - name: GRPC Native EBFP Access Log Forwarder
                  path: /en/setup/plugins/forwarder_native-ebpf-accesslog-grpc-forwarder
                - name: Native EBPF Profiling GRPC Forwarder
                  path: /en/setup/plugins/forwarder_native-ebpf-profiling-grpc-forwarder
                - name: Native Event GRPC Forwarder
                  path: /en/setup/plugins/forwarder_native-event-grpc-forwarder
                - name: Native JVM GRPC Forwarder
                  path: /en/setup/plugins/forwarder_native-jvm-grpc-forwarder
                - name: Native Log GRPC Forwarder
                  path: /en/setup/plugins/forwarder_native-log-grpc-forwarder
                - name: Native Log Kafka Forwarder
                  path: /en/setup/plugins/forwarder_native-log-kafka-forwarder
                - name: Native Management GRPC Forwarder
                  path: /en/setup/plugins/forwarder_native-management-grpc-forwarder
                - name: Native Meter GRPC Forwarder
                  path: /en/setup/plugins/forwarder_native-meter-grpc-forwarder
                - name: Native Process GRPC Forwarder
                  path: /en/setup/plugins/forwarder_native-process-grpc-forwarder
                - name: Native Profile GRPC Forwarder
                  path: /en/setup/plugins/forwarder_native-profile-grpc-forwarder
                - name: Native Tracing GRPC Forwarder
                  path: /en/setup/plugins/forwarder_native-tracing-grpc-forwarder
                - name: OpenTelemetry Metrics v1 GRPC Forwarder
                  path: /en/setup/plugins/forwarder_otlp-metrics-v1-grpc-forwarder
            - name: Queue
              catalog:
                - name: Memory Queue
                  path: /en/setup/plugins/queue_memory-queue
                - name: Mmap Queue
                  path: /en/setup/plugins/queue_mmap-queue
                - name: None Queue
                  path: /en/setup/plugins/queue_none-queue
            - name: Receiver
              catalog:
                - name: GRPC Envoy ALS v2 Receiver
                  path: /en/setup/plugins/receiver_grpc-envoy-als-v2-receiver
                - name: GRPC Envoy ALS v3 Receiver
                  path: /en/setup/plugins/receiver_grpc-envoy-als-v3-receiver
                - name: GRPC Envoy Metrics v2 Receiver
                  path: /en/setup/plugins/receiver_grpc-envoy-metrics-v2-receiver
                - name: GRPC Envoy Metrics v3 Receiver
                  path: /en/setup/plugins/receiver_grpc-envoy-metrics-v3-receiver
                - name: GRPC Native Async Profiler Receiver
                  path: /en/setup/plugins/receiver_grpc-native-async-profiler-receiver
                - name: GRPC Native CDS Receiver
                  path: /en/setup/plugins/receiver_grpc-native-cds-receiver
                - name: GRPC Native CLR Receiver
                  path: /en/setup/plugins/receiver_grpc-native-clr-receiver
                - name: GRPC Native EBFP Accesslog Receiver
                  path: /en/setup/plugins/receiver_grpc-native-ebpf-accesslog-receiver
                - name: GRPC Native EBFP Profiling Receiver
                  path: /en/setup/plugins/receiver_grpc-native-ebpf-profiling-receiver
                - name: GRPC Native Event Receiver
                  path: /en/setup/plugins/receiver_grpc-native-event-receiver
                - name: GRPC Native JVM Receiver
                  path: /en/setup/plugins/receiver_grpc-native-jvm-receiver
                - name: GRPC Native Log Receiver
                  path: /en/setup/plugins/receiver_grpc-native-log-receiver
                - name: GRPC Native Management Receiver
                  path: /en/setup/plugins/receiver_grpc-native-management-receiver
                - name: GRPC Native Meter Receiver
                  path: /en/setup/plugins/receiver_grpc-native-meter-receiver
                - name: GRPC Native Process Receiver
                  path: /en/setup/plugins/receiver_grpc-native-process-receiver
                - name: GRPC Native Profile Receiver
                  path: /en/setup/plugins/receiver_grpc-native-profile-receiver
                - name: GRPC Native Tracing Receiver
                  path: /en/setup/plugins/receiver_grpc-native-tracing-receiver
                - name: GRPC OpenTelemetry Metrics v1 Receiver
                  path: /en/setup/plugins/receiver_grpc-otlp-metrics-v1-receiver
                - name: HTTP Native Log Receiver
                  path: /en/setup/plugins/receiver_http-native-log-receiver
            - name: Server
              catalog:
                - name: GRPC Server
                  path: /en/setup/plugins/server_grpc-server
                - name: HTTP Server
                  path: /en/setup/plugins/server_http-server
    - name: Guides
      catalog:
        - name: Contribution
          catalog:
            - name: How to write a Plugin
              path: /en/guides/contribution/How-to-write-plugin
            - name: How to Release
              path: /en/guides/contribution/How-to-release
        - name: Test
          catalog:
            - name: How to do Unit Test
              path: /en/guides/test/How-to-unit-test
        - name: Compile
          catalog:
            - name: How to compile SkyWalking Satellite
              path: /en/guides/compile/How-to-compile
