@@ -98,6 +98,9 @@ def __init__(self):
9898 self .libraries_with_javaagent = 0
9999 self .libraries_with_library_version = 0
100100 self .libraries_with_telemetry = 0
101+ self .libraries_with_configurations = 0
102+ self .total_configurations = 0
103+ self .configurations_with_declarative_name = 0
101104
102105 @staticmethod
103106 def parse_yaml_content (content : str ) -> Dict :
@@ -123,6 +126,14 @@ def update_metrics(self, items: List[Dict]):
123126 if telemetry_value is not None and telemetry_value is not False :
124127 self .libraries_with_telemetry += 1
125128
129+ configurations = library .get ('configurations' )
130+ if configurations :
131+ self .libraries_with_configurations += 1
132+ for config in configurations :
133+ self .total_configurations += 1
134+ if config .get ('declarative_name' ):
135+ self .configurations_with_declarative_name += 1
136+
126137 def extract_metrics (self , data : Dict ):
127138 self .__init__ ()
128139
@@ -170,13 +181,22 @@ def fetch_instrumentation_metrics(g: Github):
170181 parser .libraries_with_library_version )
171182 meter .create_gauge ("instrumentation.libraries.with_telemetry" ).set (
172183 parser .libraries_with_telemetry )
184+ meter .create_gauge ("instrumentation.libraries.with_configurations" ).set (
185+ parser .libraries_with_configurations )
186+ meter .create_gauge ("instrumentation.configurations.total" ).set (
187+ parser .total_configurations )
188+ meter .create_gauge ("instrumentation.configurations.with_declarative_name" ).set (
189+ parser .configurations_with_declarative_name )
173190
174191 print (f" Instrumentation Metrics:" )
175192 print (f" Total Libraries: { parser .total_libraries } " )
176193 print (f" Libraries with Description: { parser .libraries_with_description } " )
177194 print (f" Libraries with javaagent: { parser .libraries_with_javaagent } " )
178195 print (f" Libraries with library: { parser .libraries_with_library_version } " )
179196 print (f" Libraries with telemetry: { parser .libraries_with_telemetry } " )
197+ print (f" Libraries with configurations: { parser .libraries_with_configurations } " )
198+ print (f" Total configuration options: { parser .total_configurations } " )
199+ print (f" Configuration options with declarative_name: { parser .configurations_with_declarative_name } " )
180200
181201
182202if __name__ == "__main__" :
0 commit comments