# Example taken from: https://github.com/influxdata/telegraf/issues/13990

# Parse String types from JSON
[[inputs.file]]
    
    files = ["./testdata/nested_objects_optional/nested_objects_single.json", "./testdata/nested_objects_optional/nested_objects_nest.json"]
    data_format = "json_v2"

  [[inputs.file.json_v2]]
    timestamp_path = 'timestamp'
    timestamp_format = 'unix_ms'

    [[inputs.file.json_v2.tag]]
      path = 'name'
      optional = true
    [[inputs.file.json_v2.tag]]
      path = 'datatype'
      optional = true
    [[inputs.file.json_v2.field]]
      path = 'value'
      rename = 'value_f'
      optional = true

    [[inputs.file.json_v2.object]]
      path = 'metrics.#(datatype=="float")#'
      optional = true
      tags = ['datatype']
      [inputs.file.json_v2.object.renames]
        value = 'value_f'
      [inputs.file.json_v2.object.fields]
        value = 'float'
    
    [[inputs.file.json_v2.object]]
      path = 'metrics.#(datatype=="string")#'
      optional = true
      tags = ['datatype']
      [inputs.file.json_v2.object.renames]
        value = 'value_s'
      [inputs.file.json_v2.object.fields]
        value = 'string'

    [[inputs.file.json_v2.object]]
      path = 'metrics.#(datatype=="int")#'
      optional = true
      tags = ['datatype']
      [inputs.file.json_v2.object.renames]
        value = 'value_i'
      [inputs.file.json_v2.object.fields]
        value = 'int'

    [[inputs.file.json_v2.object]]
      path = 'metrics.#(datatype=="bool")#'
      optional = true
      tags = ['datatype']
      [inputs.file.json_v2.object.renames]
        value = 'value_b'
      [inputs.file.json_v2.object.fields]
        value = 'bool'
