Skip to content
This repository has been archived by the owner on Mar 26, 2020. It is now read-only.

Use opencensus grpc plugin to trace operations across glusterd2 nodes. #1068

Merged
merged 3 commits into from
Aug 8, 2018

Conversation

sseshasa
Copy link
Contributor

Integrate the opencensus grpc plugin and add changes to trace volume create handler operations across the glusterd2 nodes.

Closes #1049

@Madhu-1
Copy link
Member

Madhu-1 commented Jul 25, 2018

@sseshasa , I have a question here, I can see a lot of things are changes in Gopkg.lock file. is this intended change for this PR?
example:

github.com/gorilla/mux  got updated from "v1.6.1" to "v1.6.2"

@sseshasa
Copy link
Contributor Author

@Madhu-1 This is one of the items I had mentioned in the stand-up. In order to compile after importing the opencensus grpc plugin, I had to make one change to the Gopkg.toml file as seen in the first commit. Apparently opencensus grpc plugin uses one of the later versions of grpc than what GD2 uses currently. As a result to keep all interdependencies sane a lot of packages including etcd and grpc are automatically updated in the Gopkg,lock file.

I am not sure if such huge jumps in versions across many packages are acceptable. This is something that needs to be discussed.

Copy link
Member

@kshlm kshlm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@sseshasa I believe you just did a dep ensure -update to update grpc and etcd. These packages have been just updated in the lock file and not in the Gopkg.toml file. Since we need explicit minimum versions of these, please also update the versions in Gopkg.toml.

…APIs.

Include the ocgrpc client handler as a dial option within grpc.Dial().
This registers the ocgrpc client handler as a service. Provide the ocgrpc
serverHandler to the grpc statsHandler when creating a new grpc server.

Also, edit the Gopkg.toml file to update the following package versions
for successful compilation,
 1. "github.com/coreos/etcd":     v3.2.9 -> v3.3.8
 2. "github.com/golang/protobuf": v1.0.0 -> v1.1.0
 3. "google.golang.org/grpc":     v1.0.4 -> v1.13.0

Signed-off-by: Sridhar Seshasayee <sseshasa@redhat.com>
Pass the original context to the runStepOn() function so that it can be
used by the opensensus grpc plugin to trace the calls on other nodes in
the gluster cluster. Also, append the requestID to the span info in
addition to the associated function name so that the operation can be
identified on the tracing UI application.

Signed-off-by: Sridhar Seshasayee <sseshasa@redhat.com>
@sseshasa
Copy link
Contributor Author

sseshasa commented Aug 2, 2018

@kshlm I will update etcd and grpc package versions in the Gopkg.toml file. In addition, there are other packages that have undergone minor version changes in the Gopkg.lock that are also mentioned in the toml file. Here are those packages,

github.com/gorilla/mux: v1.6.0 -> v1.6.2
github.com/spf13/cobra: v0.0.1 -> v0.0.3
github.com/spf13/pflag: v1.0.0 -> v1.0.1
github.com/spf13/viper: v1.0.0 -> v1.0.2
github.com/sirupsen/logrus: v1.0.3 -> v1.0.5
github.com/thejerf/suture: v2.0.0 -> v2.0.3

All the above have minor version changes. I think these need not be mentioned since the above have the "~" operator to cover the minor ranges. But just to confirm, should these be updated in the toml file as well?

@kshlm
Copy link
Member

kshlm commented Aug 3, 2018

All the above have minor version changes. I think these need not be mentioned since the above have the "~" operator to cover the minor ranges. But just to confirm, should these be updated in the toml file as well?

Yup. These can remain the same.

@kshlm kshlm mentioned this pull request Aug 3, 2018
@kshlm kshlm merged commit 065fe80 into gluster:master Aug 8, 2018
@sseshasa sseshasa deleted the setupocgrpc branch November 26, 2018 09:21
@sseshasa sseshasa restored the setupocgrpc branch November 26, 2018 09:21
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants