# 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.

spans:
  {{- contains .spans }}
  - traceid: {{ notEmpty .traceid }}
    segmentid: {{ notEmpty .segmentid }}
    spanid: {{ .spanid }}
    parentspanid: {{ .parentspanid }}
    refs:
      {{- if eq .servicecode "e2e-service-provider" }}
      {{- contains .refs }}
        - traceid: {{ notEmpty .traceid }}
          parentsegmentid: {{ notEmpty .parentsegmentid }}
          parentspanid: 1
          type: CROSS_PROCESS
      {{- end }}
      {{- end }}
      {{- if eq .servicecode "e2e-service-consumer" }}
        []
      {{- end }}
    servicecode: {{ notEmpty .servicecode }}
    serviceinstancename: {{ notEmpty .serviceinstancename }}
    starttime: {{ gt .starttime 0 }}
    endtime: {{ gt .endtime 0 }}
    endpointname:
      {{- if eq .type "Exit" }}
        /info
      {{ else }}
        POST:/info
      {{- end }}
    type: {{ notEmpty .type }}
    peer:
    {{- if eq .type "Exit" }}
      provider:9090
    {{ else }}
      ""
    {{- end }}
    component:
    {{- if eq .type "Exit" }}
      SpringRestTemplate
    {{- end }}
    {{- if eq .type "Entry" }}
      Tomcat
    {{- end }}
    iserror: false
    layer: Http
    tags:
      {{- contains .tags }}
      - key: http.method
        value: POST
      - key: url
        value: {{ notEmpty .value }}
      {{- end }}
    logs: []
  {{- end }}
