def METHOD_NAME(datasource=None):
    try:
        from piperider_cli.configuration import Configuration
        datasource_types = []
        project_type = '-'
        configuration = Configuration.instance()
        for ds in configuration.dataSources:
            if datasource and ds.name != datasource:
                continue
            dbt = ds.args.get('dbt')
            if project_type == '-' and dbt is not None:
                project_type = 'dbt'
            datasource_types.append(ds.type_name)
        return dict(
            project_id=configuration.get_telemetry_id(),
            project_type=project_type,
            datasource_types=datasource_types,
        )
    except Exception:
        return {
            'project_id': '(not init)'
        }