Skip to content

Commit

Permalink
add --span-kind
Browse files Browse the repository at this point in the history
  • Loading branch information
agardnerIT committed Jul 18, 2023
1 parent cfec801 commit fd6bf1e
Showing 1 changed file with 32 additions and 0 deletions.
32 changes: 32 additions & 0 deletions tracepusher.py
Original file line number Diff line number Diff line change
Expand Up @@ -125,6 +125,33 @@ def get_span_attributes_list(args):

return arg_list, dropped_attribute_count

def process_span_kind(input):
valid_values = [
"UNSPECIFIED",
"INTERNAL",
"CLIENT",
"SERVER",
"CONSUMER",
"PRODUCER"
]
output = ""
output = input.upper()
# If span kind is not valid
# Maintain backwards compatibility
# Default to SPAN_KIND_INTERNAL
# If span kind is set to unspecified
# Default (as per OTEL spec) to INTERNAL
if output not in valid_values:
output = ""
elif output == "UNSPECIFIED":
output = "SPAN_KIND_INTERNAL"
else:
output = f"SPAN_KIND_{output}"

print(f"Setting Span Kind: {output}")
return output


parser = argparse.ArgumentParser()

# Notes:
Expand All @@ -146,6 +173,7 @@ def get_span_attributes_list(args):
parser.add_argument('-sid', '--span-id', required=False, default="")
parser.add_argument('-spnattrs', '--span-attributes', required=False, nargs='*')
parser.add_argument('-spnevnts', '--span-events', required=False, nargs='*')
parser.add_argument('-sk', '--span-kind', required=False, default="INTERNAL")

args = parser.parse_args()

Expand All @@ -159,8 +187,12 @@ def get_span_attributes_list(args):
parent_span_id = args.parent_span_id
trace_id = args.trace_id
span_id = args.span_id
span_kind = args.span_kind

span_attributes_list, dropped_attribute_count = get_span_attributes_list(args.span_attributes)
span_kind = process_span_kind(span_kind)
if span_kind == "":
sys.exit("Error: invalid span kind provided.")

# Debug mode required?
DEBUG_MODE = False
Expand Down

0 comments on commit fd6bf1e

Please sign in to comment.