Skip to content

Commit a614672

Browse files
Copilotjaydeluca
andauthored
Add metrics to track configuration options and declarative_name population
Agent-Logs-Url: https://github.com/jaydeluca/java-meta-tracker/sessions/74961ac4-67ed-4a98-97c7-90ec5f4a5cb6 Co-authored-by: jaydeluca <7630696+jaydeluca@users.noreply.github.com>
1 parent fb3cb0d commit a614672

1 file changed

Lines changed: 20 additions & 0 deletions

File tree

main.py

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -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

182202
if __name__ == "__main__":

0 commit comments

Comments
 (0)