Skip to content

Commit b7a4b5d

Browse files
create commit metrics builder
1 parent 77dd606 commit b7a4b5d

File tree

2 files changed

+406
-6
lines changed

2 files changed

+406
-6
lines changed
Lines changed: 285 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,285 @@
1+
package io.opentelemetry.instrumentation.iceberg.v1_8;
2+
3+
import io.opentelemetry.api.metrics.LongCounter;
4+
import io.opentelemetry.api.metrics.LongGauge;
5+
import io.opentelemetry.api.metrics.Meter;
6+
7+
final class CommitMetricsBuilder {
8+
9+
private static final String ROOT = "iceberg.commit";
10+
private static final String DURATION = ROOT + ".duration";
11+
private static final String ATTEMPTS = ROOT + ".attempts.count";
12+
private static final String ADDED_DATA_FILES = ROOT + ".added.data_files.count";
13+
private static final String REMOVED_DATA_FILES = ROOT + ".removed.data_files.count";
14+
private static final String TOTAL_DATA_FILES = ROOT + ".total.data_files.count";
15+
private static final String ADDED_DELETE_FILES = ROOT + ".added.delete_files.count";
16+
private static final String ADDED_EQ_DELETE_FILES = ROOT + ".added.equality_delete_files.count";
17+
private static final String ADDED_POS_DELETE_FILES = ROOT + ".added.position_delete_files.count";
18+
private static final String ADDED_DVS = ROOT + ".added.dvs.count";
19+
private static final String REMOVED_POS_DELETE_FILES = ROOT + ".removed.positional_delete_files.count";
20+
private static final String REMOVED_DVS = ROOT + ".removed.dvs.count";
21+
private static final String REMOVED_EQ_DELETE_FILES = ROOT + ".removed.equality_delete_files.count";
22+
private static final String REMOVED_DELETE_FILES = ROOT + ".removed.delete_files.count";
23+
private static final String TOTAL_DELETE_FILES = ROOT + ".total.delete_files.count";
24+
private static final String ADDED_RECORDS = ROOT + ".added.records.count";
25+
private static final String REMOVED_RECORDS = ROOT + ".removed.records.count";
26+
private static final String TOTAL_RECORDS = ROOT + ".total.records.count";
27+
private static final String ADDED_FILE_SIZE_BYTES = ROOT + ".added.files.size";
28+
private static final String REMOVED_FILE_SIZE_BYTES = ROOT + ".removed.files.size";
29+
private static final String TOTAL_FILE_SIZE_BYTES = ROOT + ".total.files.size";
30+
private static final String ADDED_POS_DELETES = ROOT + ".added.position_deletes.count";
31+
private static final String REMOVED_POS_DELETES = ROOT + ".removed.position_deletes.count";
32+
private static final String TOTAL_POS_DELETES = ROOT + ".total.position_deletes.count";
33+
private static final String ADDED_EQ_DELETES = ROOT + ".added.equality_deletes.count";
34+
private static final String REMOVED_EQ_DELETES = ROOT + ".removed.equality_deletes.count";
35+
private static final String TOTAL_EQ_DELETES = ROOT + ".total.equality_deletes.count";
36+
private static final String KEPT_MANIFESTS_COUNT = ROOT + ".manifests_kept.count";
37+
private static final String CREATED_MANIFESTS_COUNT = ROOT + ".manifests_created.count";
38+
private static final String REPLACED_MANIFESTS_COUNT = ROOT + ".manifests_replaced.count";
39+
private static final String PROCESSED_MANIFEST_ENTRY_COUNT = ROOT + ".manifest_entries_processed.count";
40+
41+
private CommitMetricsBuilder() {
42+
// prevents instantiation
43+
}
44+
45+
static LongGauge duration(Meter meter) {
46+
return meter
47+
.gaugeBuilder(DURATION)
48+
.setDescription("The duration taken to process the commit.")
49+
.setUnit("ms")
50+
.ofLongs()
51+
.build();
52+
}
53+
54+
static LongCounter attempts(Meter meter) {
55+
return meter
56+
.counterBuilder(ATTEMPTS)
57+
.setDescription("The number of attempts made to complete this commit.")
58+
.setUnit("{attempt}")
59+
.build();
60+
}
61+
62+
static LongCounter addedDataFiles(Meter meter) {
63+
return meter
64+
.counterBuilder(ADDED_DATA_FILES)
65+
.setDescription("The number of data files added as part of the commit.")
66+
.setUnit("{file}")
67+
.build();
68+
}
69+
70+
static LongCounter removedDataFiles(Meter meter) {
71+
return meter
72+
.counterBuilder(REMOVED_DATA_FILES)
73+
.setDescription("The number of data files removed as part of the commit.")
74+
.setUnit("{file}")
75+
.build();
76+
}
77+
78+
static LongCounter totalDataFiles(Meter meter) {
79+
return meter
80+
.counterBuilder(TOTAL_DATA_FILES)
81+
.setDescription("The number of data files added or removed as part of the commit.")
82+
.setUnit("{file}")
83+
.build();
84+
}
85+
86+
static LongCounter addedDeleteFiles(Meter meter) {
87+
return meter
88+
.counterBuilder(ADDED_DELETE_FILES)
89+
.setDescription("The overall number of delete files added as part of the commit.")
90+
.setUnit("{file}")
91+
.build();
92+
}
93+
94+
static LongCounter addedEqualityDeleteFiles(Meter meter) {
95+
return meter
96+
.counterBuilder(ADDED_EQ_DELETE_FILES)
97+
.setDescription("The number of equality delete files added as part of the commit.")
98+
.setUnit("{file}")
99+
.build();
100+
}
101+
102+
static LongCounter addedPositionDeleteFiles(Meter meter) {
103+
return meter
104+
.counterBuilder(ADDED_POS_DELETE_FILES)
105+
.setDescription("The number of position delete files added as part of the commit.")
106+
.setUnit("{file}")
107+
.build();
108+
}
109+
110+
static LongCounter addedDeletionVectors(Meter meter) {
111+
return meter
112+
.counterBuilder(ADDED_DVS)
113+
.setDescription("The number of deletion vector files added as part of the commit.")
114+
.setUnit("{file}")
115+
.build();
116+
}
117+
118+
static LongCounter removedPositionDeleteFiles(Meter meter) {
119+
return meter
120+
.counterBuilder(REMOVED_POS_DELETE_FILES)
121+
.setDescription("The number of position delete files removed as part of the commit.")
122+
.setUnit("{file}")
123+
.build();
124+
}
125+
126+
static LongCounter removedDeletionVectors(Meter meter) {
127+
return meter
128+
.counterBuilder(REMOVED_DVS)
129+
.setDescription("The number of deletion vector files removed as part of the commit.")
130+
.setUnit("{file}")
131+
.build();
132+
}
133+
134+
static LongCounter removedEqualityDeleteFiles(Meter meter) {
135+
return meter
136+
.counterBuilder(REMOVED_EQ_DELETE_FILES)
137+
.setDescription("The number of equality delete files removed as part of the commit.")
138+
.setUnit("{file}")
139+
.build();
140+
}
141+
142+
static LongCounter removedDeleteFiles(Meter meter) {
143+
return meter
144+
.counterBuilder(REMOVED_DELETE_FILES)
145+
.setDescription("The overall number of delete files removed as part of the commit.")
146+
.setUnit("{file}")
147+
.build();
148+
}
149+
150+
static LongCounter totalDeleteFiles(Meter meter) {
151+
return meter
152+
.counterBuilder(TOTAL_DELETE_FILES)
153+
.setDescription("The overall number of delete files added or removed as part of the commit.")
154+
.setUnit("{file}")
155+
.build();
156+
}
157+
158+
static LongCounter addedRecords(Meter meter) {
159+
return meter
160+
.counterBuilder(ADDED_RECORDS)
161+
.setDescription("The number of records added as part of the commit.")
162+
.setUnit("{record}")
163+
.build();
164+
}
165+
166+
static LongCounter removedRecords(Meter meter) {
167+
return meter
168+
.counterBuilder(REMOVED_RECORDS)
169+
.setDescription("The number of records removed as part of the commit.")
170+
.setUnit("{record}")
171+
.build();
172+
}
173+
174+
static LongCounter totalRecords(Meter meter) {
175+
return meter
176+
.counterBuilder(TOTAL_RECORDS)
177+
.setDescription("The overall number of records added or removed as part of the commit.")
178+
.setUnit("{record}")
179+
.build();
180+
}
181+
182+
static LongCounter addedFilesSize(Meter meter) {
183+
return meter
184+
.counterBuilder(ADDED_FILE_SIZE_BYTES)
185+
.setDescription("The overall size of the data and delete files added as part of the commit.")
186+
.setUnit("byte")
187+
.build();
188+
}
189+
190+
static LongCounter removedFilesSize(Meter meter) {
191+
return meter
192+
.counterBuilder(REMOVED_FILE_SIZE_BYTES)
193+
.setDescription("The overall size of the data or delete files removed as part of the commit.")
194+
.setUnit("byte")
195+
.build();
196+
}
197+
198+
static LongCounter totalFilesSize(Meter meter) {
199+
return meter
200+
.counterBuilder(TOTAL_FILE_SIZE_BYTES)
201+
.setDescription("The overall size of the data or delete files added or removed as part of the commit.")
202+
.setUnit("byte")
203+
.build();
204+
}
205+
206+
static LongCounter addedPositionDeletes(Meter meter) {
207+
return meter
208+
.counterBuilder(ADDED_POS_DELETES)
209+
.setDescription("The overall number of position delete entries added as part of the commit.")
210+
.setUnit("{record}")
211+
.build();
212+
}
213+
214+
static LongCounter removedPositionDeletes(Meter meter) {
215+
return meter
216+
.counterBuilder(REMOVED_POS_DELETES)
217+
.setDescription("The overall number of position delete entries removed as part of the commit.")
218+
.setUnit("{record}")
219+
.build();
220+
}
221+
222+
static LongCounter totalPositionDeletes(Meter meter) {
223+
return meter
224+
.counterBuilder(TOTAL_POS_DELETES)
225+
.setDescription("The overall number of position delete entries added or removed as part of the commit.")
226+
.setUnit("{record}")
227+
.build();
228+
}
229+
230+
static LongCounter addedEqualityDeletes(Meter meter) {
231+
return meter
232+
.counterBuilder(ADDED_EQ_DELETES)
233+
.setDescription("The overall number of equality delete entries added as part of the commit.")
234+
.setUnit("{record}")
235+
.build();
236+
}
237+
238+
static LongCounter removedEqualityDeletes(Meter meter) {
239+
return meter
240+
.counterBuilder(REMOVED_EQ_DELETES)
241+
.setDescription("The overall number of equality delete entries removed as part of the commit.")
242+
.setUnit("{record}")
243+
.build();
244+
}
245+
246+
static LongCounter totalEqualityDeletes(Meter meter) {
247+
return meter
248+
.counterBuilder(TOTAL_EQ_DELETES)
249+
.setDescription("The overall number of equality delete entries added or removed as part of the commit.")
250+
.setUnit("{record}")
251+
.build();
252+
}
253+
254+
static LongCounter keptManifests(Meter meter) {
255+
return meter
256+
.counterBuilder(KEPT_MANIFESTS_COUNT)
257+
.setDescription("The number of manifests that are kept as part of the commit.")
258+
.setUnit("{file}")
259+
.build();
260+
}
261+
262+
static LongCounter createdManfiests(Meter meter) {
263+
return meter
264+
.counterBuilder(CREATED_MANIFESTS_COUNT)
265+
.setDescription("The number of manifests that are created as part of the commit.")
266+
.setUnit("{file}")
267+
.build();
268+
}
269+
270+
static LongCounter replacedManifests(Meter meter) {
271+
return meter
272+
.counterBuilder(REPLACED_MANIFESTS_COUNT)
273+
.setDescription("The overall number of manifests that are deleted or overwritten as part of the commit.")
274+
.setUnit("{file}")
275+
.build();
276+
}
277+
278+
static LongCounter processedManfiestEntries(Meter meter) {
279+
return meter
280+
.counterBuilder(PROCESSED_MANIFEST_ENTRY_COUNT)
281+
.setDescription("The overall number of manifest entries (referenced files) that are processed as part of the commit.")
282+
.setUnit("{file}")
283+
.build();
284+
}
285+
}

0 commit comments

Comments
 (0)