Skip to content

Commit

Permalink
Revert "Provide ability to specify client info in traces (#1631)"
Browse files Browse the repository at this point in the history
This reverts commit 96af44e.
  • Loading branch information
abernix committed Sep 27, 2018
1 parent 03a894d commit 68c82e6
Show file tree
Hide file tree
Showing 7 changed files with 2 additions and 51 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Expand Up @@ -2,6 +2,7 @@

### vNEXT

- FIXME(@abernix): client info in traces.
- Allow an optional function to resolve the `rootValue`, passing the `DocumentNode` AST to determine the value. [PR #1555](https://github.com/apollographql/apollo-server/pull/1555)
- Follow-up on the work in [PR #1516](https://github.com/apollographql/apollo-server/pull/1516) to also fix missing insertion cursor/caret when a custom GraphQL configuration is specified which doesn't specify its own `cursorShape` property. [PR #1607](https://github.com/apollographql/apollo-server/pull/1607)

Expand Down
10 changes: 0 additions & 10 deletions docs/source/api/apollo-server.md
Expand Up @@ -365,13 +365,3 @@ addMockFunctionsToSchema({
* `maskErrorDetails`: boolean

Set to true to remove error details from the traces sent to Apollo's servers. Defaults to false.

* generateClientInfo?: (o: { context: any, extensions?: Record<string, any>}) => ClientInfo;

Creates the client information that is attached to the traces sent to the
Apollo backend. The context field is the execution context passed to the
resolvers and the extensions field corresponds to the same value in the POST
body or GET parameters. `ClientInfo` contains fields for `clientName` and
`clientVersion`, which are both optional. The default generation copies the
respective fields from `extensions.clientInfo`. If `clientName` or
`clientVersion` is not present, the values are set to the empty string.
13 changes: 0 additions & 13 deletions packages/apollo-engine-reporting/src/agent.ts
Expand Up @@ -34,11 +34,6 @@ Traces.encode = function(message, originalWriter) {
return writer;
};

export interface ClientInfo {
clientName?: string;
clientVersion?: string;
}

export interface EngineReportingOptions {
// API key for the service. Get this from
// [Engine](https://engine.apollographql.com) by logging in and creating
Expand Down Expand Up @@ -88,14 +83,6 @@ export interface EngineReportingOptions {
sendReportsImmediately?: boolean;
// To remove the error message from traces, set this to true. Defaults to false
maskErrorDetails?: boolean;
// Creates the client information attached to the traces sent to the Apollo
// backend
generateClientInfo?: (
o: {
context: any;
extensions?: Record<string, any>;
},
) => ClientInfo;

// XXX Provide a way to set client_name, client_version, client_address,
// service, and service_version fields. They are currently not revealed in the
Expand Down
25 changes: 1 addition & 24 deletions packages/apollo-engine-reporting/src/extension.ts
Expand Up @@ -15,7 +15,7 @@ import {
} from 'graphql-extensions';
import { Trace, google } from 'apollo-engine-reporting-protobuf';

import { EngineReportingOptions, ClientInfo } from './agent';
import { EngineReportingOptions } from './agent';
import { defaultSignature } from './signature';

// EngineReportingExtension is the per-request GraphQLExtension which creates a
Expand All @@ -38,12 +38,6 @@ export class EngineReportingExtension<TContext = any>
operationName: string,
trace: Trace,
) => void;
private generateClientInfo: (
o: {
context: any;
extensions?: Record<string, any>;
},
) => ClientInfo;

public constructor(
options: EngineReportingOptions,
Expand All @@ -57,11 +51,6 @@ export class EngineReportingExtension<TContext = any>
const root = new Trace.Node();
this.trace.root = root;
this.nodes.set(responsePathAsString(undefined), root);
this.generateClientInfo =
options.generateClientInfo ||
// Default to using the clientInfo field of the request's extensions, when
// the ClientInfo fields are undefined, we send the empty string
(({ extensions }) => (extensions && extensions.clientInfo) || {});
}

public requestDidStart(o: {
Expand All @@ -71,8 +60,6 @@ export class EngineReportingExtension<TContext = any>
variables?: Record<string, any>;
persistedQueryHit?: boolean;
persistedQueryRegister?: boolean;
context: any;
extensions?: Record<string, any>;
}): EndHandler {
this.trace.startTime = dateToTimestamp(new Date());
this.startHrTime = process.hrtime();
Expand Down Expand Up @@ -167,16 +154,6 @@ export class EngineReportingExtension<TContext = any>
});
}

// While clientAddress could be a part of the protobuf, we'll ignore it for
// now, since the backend does not group by it and Engine frontend will not
// support it in the short term
const { clientName, clientVersion } = this.generateClientInfo({
context: o.context,
extensions: o.extensions,
});
this.trace.clientName = clientName || '';
this.trace.clientVersion = clientVersion || '';

return () => {
this.trace.durationNs = durationHrTimeToNanos(
process.hrtime(this.startHrTime),
Expand Down
1 change: 0 additions & 1 deletion packages/apollo-server-core/src/runHttpQuery.ts
Expand Up @@ -402,7 +402,6 @@ export async function runHttpQuery(
: false,
request: request.request,
extensions: optionsObject.extensions,
queryExtensions: extensions,
persistedQueryHit,
persistedQueryRegister,
};
Expand Down
2 changes: 0 additions & 2 deletions packages/apollo-server-core/src/runQuery.ts
Expand Up @@ -66,7 +66,6 @@ export interface QueryOptions {
cacheControl?: boolean | CacheControlExtensionOptions;
request: Pick<Request, 'url' | 'method' | 'headers'>;
extensions?: Array<() => GraphQLExtension>;
queryExtensions?: Record<string, any>;
persistedQueryHit?: boolean;
persistedQueryRegister?: boolean;
}
Expand Down Expand Up @@ -137,7 +136,6 @@ function doRunQuery(options: QueryOptions): Promise<GraphQLResponse> {
persistedQueryHit: options.persistedQueryHit,
persistedQueryRegister: options.persistedQueryRegister,
context,
extensions: options.queryExtensions,
});
return Promise.resolve()
.then(
Expand Down
1 change: 0 additions & 1 deletion packages/graphql-extensions/src/index.ts
Expand Up @@ -81,7 +81,6 @@ export class GraphQLExtensionStack<TContext = any> {
persistedQueryHit?: boolean;
persistedQueryRegister?: boolean;
context: TContext;
extensions?: Record<string, any>;
}): EndHandler {
return this.handleDidStart(
ext => ext.requestDidStart && ext.requestDidStart(o),
Expand Down

0 comments on commit 68c82e6

Please sign in to comment.