aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--api/src/main/java/io/opencensus/common/ServerStatsFieldEnums.java4
-rw-r--r--api/src/main/java/io/opencensus/trace/SpanBuilder.java2
-rw-r--r--build.gradle2
-rw-r--r--buildscripts/checkstyle.xml17
-rw-r--r--contrib/log_correlation/stackdriver/src/main/java/io/opencensus/contrib/logcorrelation/stackdriver/OpenCensusTraceLoggingEnhancer.java1
-rw-r--r--contrib/spring/src/main/java/io/opencensus/contrib/spring/aop/CensusSpringAspect.java3
-rw-r--r--contrib/spring/src/main/java/io/opencensus/contrib/spring/aop/Handler.java4
-rw-r--r--exporters/stats/stackdriver/src/main/java/io/opencensus/exporter/stats/stackdriver/StackdriverExportUtils.java4
-rw-r--r--exporters/trace/stackdriver/src/main/java/io/opencensus/exporter/trace/stackdriver/StackdriverV2ExporterHandler.java36
-rw-r--r--exporters/trace/zipkin/src/main/java/io/opencensus/exporter/trace/zipkin/ZipkinExporterHandler.java4
-rw-r--r--impl_core/src/main/java/io/opencensus/implcore/stats/MutableAggregation.java7
-rw-r--r--impl_core/src/main/java/io/opencensus/implcore/stats/RecordUtils.java7
-rw-r--r--impl_core/src/main/java/io/opencensus/implcore/trace/SpanBuilderImpl.java2
13 files changed, 54 insertions, 39 deletions
diff --git a/api/src/main/java/io/opencensus/common/ServerStatsFieldEnums.java b/api/src/main/java/io/opencensus/common/ServerStatsFieldEnums.java
index 92194d96..79cb196e 100644
--- a/api/src/main/java/io/opencensus/common/ServerStatsFieldEnums.java
+++ b/api/src/main/java/io/opencensus/common/ServerStatsFieldEnums.java
@@ -17,6 +17,7 @@
package io.opencensus.common;
import java.util.TreeMap;
+import javax.annotation.Nullable;
/**
* A Enum representation for Ids and Size for attributes of {@code ServerStats}.
@@ -85,8 +86,9 @@ public final class ServerStatsFieldEnums {
* @return the numerical value of the id. null if the id is not valid
* @since 0.16
*/
+ @Nullable
public static Id valueOf(int value) {
- return (Id) map.get(value);
+ return map.get(value);
}
}
diff --git a/api/src/main/java/io/opencensus/trace/SpanBuilder.java b/api/src/main/java/io/opencensus/trace/SpanBuilder.java
index 00e11572..1a4e29e9 100644
--- a/api/src/main/java/io/opencensus/trace/SpanBuilder.java
+++ b/api/src/main/java/io/opencensus/trace/SpanBuilder.java
@@ -335,7 +335,7 @@ public abstract class SpanBuilder {
}
@Override
- public SpanBuilder setSpanKind(Span.Kind spanKind) {
+ public SpanBuilder setSpanKind(@Nullable Span.Kind spanKind) {
return this;
}
diff --git a/build.gradle b/build.gradle
index f021d251..e76d945a 100644
--- a/build.gradle
+++ b/build.gradle
@@ -410,7 +410,7 @@ subprojects {
compile.options.compilerArgs += [
'-Xmaxerrs', '10000',
"-Xbootclasspath/p:${configurations.checkerFrameworkAnnotatedJDK.asPath}",
- "-AskipDefs=[\\.AutoValue_|\\.TraceIdProto]",
+ "-AskipDefs=\\.AutoValue_|^io.opencensus.contrib.appengine.standard.util.TraceIdProto\$|^io.opencensus.contrib.appengine.standard.util.TraceProto\$",
"-AinvariantArrays"
]
options.fork = true
diff --git a/buildscripts/checkstyle.xml b/buildscripts/checkstyle.xml
index b136c208..bfdc314f 100644
--- a/buildscripts/checkstyle.xml
+++ b/buildscripts/checkstyle.xml
@@ -157,14 +157,15 @@
<message key="ws.notPreceded"
value="GenericWhitespace ''{0}'' is not preceded with whitespace."/>
</module>
- <module name="Indentation">
- <property name="basicOffset" value="2"/>
- <property name="braceAdjustment" value="0"/>
- <property name="caseIndent" value="2"/>
- <property name="throwsIndent" value="4"/>
- <property name="lineWrappingIndentation" value="4"/>
- <property name="arrayInitIndent" value="2"/>
- </module>
+ <!-- <!-\- Checkstyle indentation rules conflict with google-java-format: -\-> -->
+ <!-- <module name="Indentation"> -->
+ <!-- <property name="basicOffset" value="2"/> -->
+ <!-- <property name="braceAdjustment" value="0"/> -->
+ <!-- <property name="caseIndent" value="2"/> -->
+ <!-- <property name="throwsIndent" value="4"/> -->
+ <!-- <property name="lineWrappingIndentation" value="4"/> -->
+ <!-- <property name="arrayInitIndent" value="2"/> -->
+ <!-- </module> -->
<module name="AbbreviationAsWordInName">
<property name="ignoreFinal" value="false"/>
<property name="allowedAbbreviationLength" value="1"/>
diff --git a/contrib/log_correlation/stackdriver/src/main/java/io/opencensus/contrib/logcorrelation/stackdriver/OpenCensusTraceLoggingEnhancer.java b/contrib/log_correlation/stackdriver/src/main/java/io/opencensus/contrib/logcorrelation/stackdriver/OpenCensusTraceLoggingEnhancer.java
index cbf81661..75320fdd 100644
--- a/contrib/log_correlation/stackdriver/src/main/java/io/opencensus/contrib/logcorrelation/stackdriver/OpenCensusTraceLoggingEnhancer.java
+++ b/contrib/log_correlation/stackdriver/src/main/java/io/opencensus/contrib/logcorrelation/stackdriver/OpenCensusTraceLoggingEnhancer.java
@@ -151,6 +151,7 @@ public final class OpenCensusTraceLoggingEnhancer implements LoggingEnhancer {
// An OpenCensusTraceLoggingEnhancer property can be set with a logging property or a system
// property.
+ @Nullable
private static String lookUpProperty(String name) {
String property = LogManager.getLogManager().getProperty(name);
return property == null || property.isEmpty() ? System.getProperty(name) : property;
diff --git a/contrib/spring/src/main/java/io/opencensus/contrib/spring/aop/CensusSpringAspect.java b/contrib/spring/src/main/java/io/opencensus/contrib/spring/aop/CensusSpringAspect.java
index f17e2837..eb10c7ea 100644
--- a/contrib/spring/src/main/java/io/opencensus/contrib/spring/aop/CensusSpringAspect.java
+++ b/contrib/spring/src/main/java/io/opencensus/contrib/spring/aop/CensusSpringAspect.java
@@ -57,6 +57,9 @@ public final class CensusSpringAspect {
Method method = signature.getMethod();
Traced annotation = method.getAnnotation(Traced.class);
+ if (annotation == null) {
+ return call.proceed();
+ }
String spanName = annotation.name();
if (spanName.isEmpty()) {
spanName = method.getName();
diff --git a/contrib/spring/src/main/java/io/opencensus/contrib/spring/aop/Handler.java b/contrib/spring/src/main/java/io/opencensus/contrib/spring/aop/Handler.java
index e62321dd..218854b1 100644
--- a/contrib/spring/src/main/java/io/opencensus/contrib/spring/aop/Handler.java
+++ b/contrib/spring/src/main/java/io/opencensus/contrib/spring/aop/Handler.java
@@ -42,7 +42,9 @@ final class Handler {
} catch (Throwable t) {
Map<String, AttributeValue> attributes = new HashMap<String, AttributeValue>();
- attributes.put("message", AttributeValue.stringAttributeValue(t.getMessage()));
+ String message = t.getMessage();
+ attributes.put(
+ "message", AttributeValue.stringAttributeValue(message == null ? "null" : message));
attributes.put("type", AttributeValue.stringAttributeValue(t.getClass().toString()));
Span span = tracer.getCurrentSpan();
diff --git a/exporters/stats/stackdriver/src/main/java/io/opencensus/exporter/stats/stackdriver/StackdriverExportUtils.java b/exporters/stats/stackdriver/src/main/java/io/opencensus/exporter/stats/stackdriver/StackdriverExportUtils.java
index 9b5b77da..2c571cfe 100644
--- a/exporters/stats/stackdriver/src/main/java/io/opencensus/exporter/stats/stackdriver/StackdriverExportUtils.java
+++ b/exporters/stats/stackdriver/src/main/java/io/opencensus/exporter/stats/stackdriver/StackdriverExportUtils.java
@@ -374,8 +374,8 @@ final class StackdriverExportUtils {
return builder.build();
}
},
- Functions.</*@Nullable*/ TimeInterval>throwIllegalArgumentException(),
- Functions.</*@Nullable*/ TimeInterval>throwIllegalArgumentException());
+ Functions.<TimeInterval>throwIllegalArgumentException(),
+ Functions.<TimeInterval>throwIllegalArgumentException());
}
// Create a TypedValue using AggregationData and Aggregation
diff --git a/exporters/trace/stackdriver/src/main/java/io/opencensus/exporter/trace/stackdriver/StackdriverV2ExporterHandler.java b/exporters/trace/stackdriver/src/main/java/io/opencensus/exporter/trace/stackdriver/StackdriverV2ExporterHandler.java
index 9588a425..5d168425 100644
--- a/exporters/trace/stackdriver/src/main/java/io/opencensus/exporter/trace/stackdriver/StackdriverV2ExporterHandler.java
+++ b/exporters/trace/stackdriver/src/main/java/io/opencensus/exporter/trace/stackdriver/StackdriverV2ExporterHandler.java
@@ -105,8 +105,8 @@ final class StackdriverV2ExporterHandler extends SpanExporter.Handler {
private static final Map<String, AttributeValue> RESOURCE_LABELS = getResourceLabels(RESOURCE);
// Constant functions for AttributeValue.
- private static final Function<String, AttributeValue> stringAttributeValueFunction =
- new Function<String, AttributeValue>() {
+ private static final Function<String, /*@Nullable*/ AttributeValue> stringAttributeValueFunction =
+ new Function<String, /*@Nullable*/ AttributeValue>() {
@Override
public AttributeValue apply(String stringValue) {
Builder attributeValueBuilder = AttributeValue.newBuilder();
@@ -114,17 +114,18 @@ final class StackdriverV2ExporterHandler extends SpanExporter.Handler {
return attributeValueBuilder.build();
}
};
- private static final Function<Boolean, AttributeValue> booleanAttributeValueFunction =
- new Function<Boolean, AttributeValue>() {
- @Override
- public AttributeValue apply(Boolean booleanValue) {
- Builder attributeValueBuilder = AttributeValue.newBuilder();
- attributeValueBuilder.setBoolValue(booleanValue);
- return attributeValueBuilder.build();
- }
- };
- private static final Function<Long, AttributeValue> longAttributeValueFunction =
- new Function<Long, AttributeValue>() {
+ private static final Function<Boolean, /*@Nullable*/ AttributeValue>
+ booleanAttributeValueFunction =
+ new Function<Boolean, /*@Nullable*/ AttributeValue>() {
+ @Override
+ public AttributeValue apply(Boolean booleanValue) {
+ Builder attributeValueBuilder = AttributeValue.newBuilder();
+ attributeValueBuilder.setBoolValue(booleanValue);
+ return attributeValueBuilder.build();
+ }
+ };
+ private static final Function<Long, /*@Nullable*/ AttributeValue> longAttributeValueFunction =
+ new Function<Long, /*@Nullable*/ AttributeValue>() {
@Override
public AttributeValue apply(Long longValue) {
Builder attributeValueBuilder = AttributeValue.newBuilder();
@@ -270,8 +271,10 @@ final class StackdriverV2ExporterHandler extends SpanExporter.Handler {
Attributes.Builder attributesBuilder =
Attributes.newBuilder().setDroppedAttributesCount(droppedAttributesCount);
for (Map.Entry<String, io.opencensus.trace.AttributeValue> label : attributes.entrySet()) {
- attributesBuilder.putAttributeMap(
- mapKey(label.getKey()), toAttributeValueProto(label.getValue()));
+ AttributeValue value = toAttributeValueProto(label.getValue());
+ if (value != null) {
+ attributesBuilder.putAttributeMap(mapKey(label.getKey()), value);
+ }
}
return attributesBuilder;
}
@@ -416,6 +419,7 @@ final class StackdriverV2ExporterHandler extends SpanExporter.Handler {
.build();
}
+ @javax.annotation.Nullable
private static AttributeValue toAttributeValueProto(
io.opencensus.trace.AttributeValue attributeValue) {
return attributeValue.match(
@@ -433,7 +437,7 @@ final class StackdriverV2ExporterHandler extends SpanExporter.Handler {
}
}
- private static String toDisplayName(String spanName, Kind spanKind) {
+ private static String toDisplayName(String spanName, @javax.annotation.Nullable Kind spanKind) {
if (spanKind == Kind.SERVER && !spanName.startsWith(SERVER_PREFIX)) {
return SERVER_PREFIX + spanName;
}
diff --git a/exporters/trace/zipkin/src/main/java/io/opencensus/exporter/trace/zipkin/ZipkinExporterHandler.java b/exporters/trace/zipkin/src/main/java/io/opencensus/exporter/trace/zipkin/ZipkinExporterHandler.java
index baa2f459..5a655f1e 100644
--- a/exporters/trace/zipkin/src/main/java/io/opencensus/exporter/trace/zipkin/ZipkinExporterHandler.java
+++ b/exporters/trace/zipkin/src/main/java/io/opencensus/exporter/trace/zipkin/ZipkinExporterHandler.java
@@ -172,8 +172,8 @@ final class ZipkinExporterHandler extends SpanExporter.Handler {
// The return type needs to be nullable when this function is used as an argument to 'match' in
// attributeValueToString, because 'match' doesn't allow covariant return types.
- private static final Function<Object, /*@Nullable*/ String> returnToString =
- new Function<Object, /*@Nullable*/ String>() {
+ private static final Function<Object, String> returnToString =
+ new Function<Object, String>() {
@Override
public String apply(Object input) {
return input.toString();
diff --git a/impl_core/src/main/java/io/opencensus/implcore/stats/MutableAggregation.java b/impl_core/src/main/java/io/opencensus/implcore/stats/MutableAggregation.java
index a7fa0da4..ddfce618 100644
--- a/impl_core/src/main/java/io/opencensus/implcore/stats/MutableAggregation.java
+++ b/impl_core/src/main/java/io/opencensus/implcore/stats/MutableAggregation.java
@@ -348,9 +348,10 @@ abstract class MutableAggregation {
this.bucketCounts[i] += bucketCounts[i];
}
- if (exemplars != null) {
- for (int i = 0; i < mutableDistribution.getExemplars().length; i++) {
- Exemplar exemplar = mutableDistribution.getExemplars()[i];
+ Exemplar[] otherExemplars = mutableDistribution.getExemplars();
+ if (exemplars != null && otherExemplars != null) {
+ for (int i = 0; i < otherExemplars.length; i++) {
+ Exemplar exemplar = otherExemplars[i];
// Assume other is always newer than this, because we combined interval buckets in time
// order.
// If there's a newer exemplar, overwrite current value.
diff --git a/impl_core/src/main/java/io/opencensus/implcore/stats/RecordUtils.java b/impl_core/src/main/java/io/opencensus/implcore/stats/RecordUtils.java
index 5dc77cb1..200a054b 100644
--- a/impl_core/src/main/java/io/opencensus/implcore/stats/RecordUtils.java
+++ b/impl_core/src/main/java/io/opencensus/implcore/stats/RecordUtils.java
@@ -143,7 +143,7 @@ final class RecordUtils {
return measurement.match(
GET_VALUE_FROM_MEASUREMENT_DOUBLE,
GET_VALUE_FROM_MEASUREMENT_LONG,
- Functions.</*@Nullable*/ Double>throwAssertionError());
+ Functions.<Double>throwAssertionError());
}
// static inner Function classes
@@ -263,8 +263,9 @@ final class RecordUtils {
boxedBucketCounts.add(bucketCount);
}
List<Exemplar> exemplars = new ArrayList<Exemplar>();
- if (arg.getExemplars() != null) {
- for (Exemplar exemplar : arg.getExemplars()) {
+ Exemplar[] exemplarArray = arg.getExemplars();
+ if (exemplarArray != null) {
+ for (Exemplar exemplar : exemplarArray) {
if (exemplar != null) {
exemplars.add(exemplar);
}
diff --git a/impl_core/src/main/java/io/opencensus/implcore/trace/SpanBuilderImpl.java b/impl_core/src/main/java/io/opencensus/implcore/trace/SpanBuilderImpl.java
index f5d74393..3c5f20c6 100644
--- a/impl_core/src/main/java/io/opencensus/implcore/trace/SpanBuilderImpl.java
+++ b/impl_core/src/main/java/io/opencensus/implcore/trace/SpanBuilderImpl.java
@@ -241,7 +241,7 @@ final class SpanBuilderImpl extends SpanBuilder {
}
@Override
- public SpanBuilderImpl setSpanKind(Kind kind) {
+ public SpanBuilderImpl setSpanKind(@Nullable Kind kind) {
this.kind = kind;
return this;
}