[example] update Spark example so it runs with dd-java-agent

This commit is contained in:
Emanuele Palazzetti 2017-07-27 21:20:17 +02:00
parent d10e8e0c34
commit be8e3ef1bf
No known key found for this signature in database
GPG Key ID: F4D8F69FEF18A502
2 changed files with 13 additions and 17 deletions

View File

@ -1,21 +1,20 @@
import static spark.Spark.*;
import com.datadoghq.trace.resolver.DDTracerFactory;
import com.mongodb.client.MongoCollection; import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase; import com.mongodb.client.MongoDatabase;
import io.opentracing.ActiveSpan; import io.opentracing.ActiveSpan;
import io.opentracing.Tracer; import io.opentracing.Tracer;
import java.util.Arrays;
import org.bson.Document; import org.bson.Document;
import java.util.Arrays;
import static spark.Spark.get;
public class Hello { public class Hello {
private static MongoDatabase mDatabase; private static MongoDatabase mDatabase;
private static Tracer mTracer; private static Tracer mTracer;
public static void main(String[] args) { public static void main(final String[] args) {
// Init the tracer from the configuration file // Get the global tracer
mTracer = DDTracerFactory.createFromConfigurationFile(); mTracer = io.opentracing.util.GlobalTracer.get();
io.opentracing.util.GlobalTracer.register(mTracer);
// initialize the Mongo database // initialize the Mongo database
mDatabase = MongoDriver.getDatabase("rest_spark"); mDatabase = MongoDriver.getDatabase("rest_spark");
@ -28,17 +27,17 @@ public class Hello {
try (ActiveSpan activeSpan = mTracer.buildSpan("spark.request").startActive()) { try (ActiveSpan activeSpan = mTracer.buildSpan("spark.request").startActive()) {
activeSpan.setTag("http.url", req.url()); activeSpan.setTag("http.url", req.url());
String id = req.params(":id"); final String id = req.params(":id");
// create a collection // create a collection
Document doc = final Document doc =
new Document("name", "MongoDB") new Document("name", "MongoDB")
.append("type", "database") .append("type", "database")
.append("identifier", id) .append("identifier", id)
.append("versions", Arrays.asList("v3.2", "v3.0", "v2.6")) .append("versions", Arrays.asList("v3.2", "v3.0", "v2.6"))
.append("info", new Document("x", 203).append("y", 102)); .append("info", new Document("x", 203).append("y", 102));
MongoCollection<Document> collection = mDatabase.getCollection("calls"); final MongoCollection<Document> collection = mDatabase.getCollection("calls");
collection.insertOne(doc); collection.insertOne(doc);
// write the count somewhere // write the count somewhere

View File

@ -1,15 +1,12 @@
import com.mongodb.MongoClient; import com.mongodb.MongoClient;
import com.mongodb.MongoClientURI; import com.mongodb.MongoClientURI;
import com.mongodb.client.MongoDatabase; import com.mongodb.client.MongoDatabase;
import io.opentracing.Tracer;
import io.opentracing.contrib.mongo.TracingMongoClient;
public class MongoDriver { public class MongoDriver {
public static MongoDatabase getDatabase(String dbName) { public static MongoDatabase getDatabase(final String dbName) {
Tracer tracer = io.opentracing.util.GlobalTracer.get(); final MongoClientURI connectionString = new MongoClientURI("mongodb://localhost:27017");
MongoClientURI connectionString = new MongoClientURI("mongodb://localhost:27017"); final MongoClient mongoClient = new MongoClient(connectionString);
MongoClient mongoClient = new TracingMongoClient(tracer, connectionString);
return mongoClient.getDatabase(dbName); return mongoClient.getDatabase(dbName);
} }
} }