@metadata_reactor.provides( 'telegraf/input_plugins/exec', ) def telegraf(metadata): result = {} for location, api_key in metadata.get('telegraf_airgradient', {}).items(): result[f'airgradient_{location}'] = { 'commands': [f'/usr/local/bin/airgradient_telegraf {location} {api_key}'], 'data_format': 'influx', 'timeout': '10s', } return { 'telegraf': { 'input_plugins': { 'exec': result, }, }, }