|
40 | 40 | import com.google.cloud.bigtable.data.v2.internal.compat.ops.ReadRowShimInner; |
41 | 41 | import com.google.cloud.bigtable.data.v2.internal.csm.Metrics; |
42 | 42 | import com.google.cloud.bigtable.data.v2.internal.csm.attributes.ClientInfo; |
| 43 | +import com.google.cloud.bigtable.data.v2.internal.csm.tracers.DebugTagTracer; |
43 | 44 | import com.google.cloud.bigtable.data.v2.internal.csm.tracers.DirectPathCompatibleTracer; |
44 | 45 | import com.google.cloud.bigtable.data.v2.internal.dp.DirectAccessInvestigator; |
45 | 46 | import com.google.cloud.bigtable.data.v2.internal.util.ClientConfigurationManager; |
@@ -81,6 +82,7 @@ public class ShimImpl implements Shim { |
81 | 82 | private final ClientConfigurationManager configManager; |
82 | 83 | private final Resource<ClientConfigurationManager> configManagerResource; |
83 | 84 | private final Client client; |
| 85 | + private final DebugTagTracer debugTagTracer; |
84 | 86 |
|
85 | 87 | private final ReadRowShimInner readRowShimInner; |
86 | 88 | private final MutateRowShim mutateRowShim; |
@@ -182,13 +184,20 @@ public static Shim create( |
182 | 184 | userCallbackExecutor, |
183 | 185 | clientChannelProvider); |
184 | 186 |
|
185 | | - return new ShimImpl(Resource.createOwned(configManager, configManager::close), client); |
| 187 | + return new ShimImpl( |
| 188 | + Resource.createOwned(configManager, configManager::close), |
| 189 | + client, |
| 190 | + metrics.getDebugTagTracer()); |
186 | 191 | } |
187 | 192 |
|
188 | | - public ShimImpl(Resource<ClientConfigurationManager> configManagerResource, Client client) { |
| 193 | + public ShimImpl( |
| 194 | + Resource<ClientConfigurationManager> configManagerResource, |
| 195 | + Client client, |
| 196 | + DebugTagTracer debugTagTracer) { |
189 | 197 | this.configManagerResource = configManagerResource; |
190 | 198 | this.configManager = configManagerResource.get(); |
191 | 199 | this.client = client; |
| 200 | + this.debugTagTracer = debugTagTracer; |
192 | 201 |
|
193 | 202 | this.readRowShimInner = new ReadRowShimInner(client); |
194 | 203 | this.mutateRowShim = new MutateRowShim(client); |
@@ -221,7 +230,8 @@ public static Shim createForFactoryChild( |
221 | 230 | Resource.createShared(userCallbackExecutor), |
222 | 231 | Resource.createShared(sharedChannelPool)); |
223 | 232 |
|
224 | | - return new ShimImpl(Resource.createShared(sharedConfigManager), client); |
| 233 | + return new ShimImpl( |
| 234 | + Resource.createShared(sharedConfigManager), client, metrics.getDebugTagTracer()); |
225 | 235 | } |
226 | 236 |
|
227 | 237 | /** Returns the raw config manager (e.g. for sharing with factory children). */ |
@@ -355,13 +365,14 @@ public <RowT> UnaryCallable<Query, RowT> decorateReadRow( |
355 | 365 | configManager, |
356 | 366 | classic, |
357 | 367 | new ReadRowShim<>(readRowShimInner, rowAdapter), |
358 | | - Util.extractTimeout(settings)); |
| 368 | + Util.extractTimeout(settings), |
| 369 | + debugTagTracer); |
359 | 370 | } |
360 | 371 |
|
361 | 372 | @Override |
362 | 373 | public UnaryCallable<RowMutation, Void> decorateMutateRow( |
363 | 374 | UnaryCallable<RowMutation, Void> classic, UnaryCallSettings<?, ?> settings) { |
364 | 375 | return new DivertingUnaryCallable<>( |
365 | | - configManager, classic, mutateRowShim, Util.extractTimeout(settings)); |
| 376 | + configManager, classic, mutateRowShim, Util.extractTimeout(settings), debugTagTracer); |
366 | 377 | } |
367 | 378 | } |
0 commit comments