Where communities thrive

  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
  • 06:02
    codecov-commenter commented #2050
  • 05:58
    codecov-commenter commented #2050
  • 05:57
    codecov-commenter commented #2050
  • 05:34
    OmerLitov synchronize #2050
  • 03:16
    tmc labeled #944
  • 03:16
    tmc opened #944
  • Aug 09 23:48
    nilebox commented #2050
  • Aug 09 14:38
    OmerLitov commented #2050
  • Aug 09 14:36
    googlebot labeled #2050
  • Aug 09 14:36
    OmerLitov review_requested #2050
  • Aug 09 14:36
    OmerLitov review_requested #2050
  • Aug 09 14:36
    OmerLitov review_requested #2050
  • Aug 09 14:36
    OmerLitov review_requested #2050
  • Aug 09 14:36
    OmerLitov opened #2050
  • Aug 09 11:51
    OmerLitov commented #2040
  • Aug 07 20:51
    lzchen commented #904
  • Aug 07 17:58
    lzchen commented #904
  • Aug 07 17:41
    lzchen commented #904
  • Aug 07 14:29
    CBurini commented #904
  • Aug 07 00:26
    jeffalder closed #1958
@mwuertinger I am interested just as well by the influxdb exporter (golang). I've actually forked and slightly modified yours to be more general regarding the use of views, and the mapping of many metrics into a single time series. I'd be glad to share this, and possibly contribute this back to the official contrib repo. I just don't know what is the incubating process for such new export target
Mark Petronic
Just getting started with opencensus. Concept question. say I want to record number of times my cache is hit for sets, gets, deletes. Do I create just ONE measure to record the counts and use three different keys like the psuedo code below?
private static final MeasureLong M_CACHE_ACCESSES = MeasureLong.create("cache_accesses", "The number times the cache was accessed", "1");

    private static void recordTaggedStat(TagKey key, String value, MeasureLong m, long value) {
        TagContext tctx = tagger.emptyBuilder().put(key, TagValue.create(value)).build();
        try (Scope ss = tagger.withTagContext(tctx)) {
            statsRecorder.newMeasureMap().put(m, value).record();

Calls to record metrics for the three access types:

recordTaggedStat(TAGKEY_CACHE_MODE, "GET", M_CACHE_ACCESSES, long_value);
recordTaggedStat(TAGKEY_CACHE_MODE, "SET", M_CACHE_ACCESSES, long_value);
recordTaggedStat(TAGKEY_CACHE_MODE, "DEL", M_CACHE_ACCESSES, long_value);
@mpetronic most likely you want a single "cache hit" measure with a tag to distinguish the operation
Mark Petronic
Thanks @fredbi . I did get it working that way and it makes sense now.
Tim Schwenke
Can someone please point me to a source repository that uses opencensus metrics (not necessarily tracing) with Python or JS? I want to introduce OpenCensus/OpenTelemetry in my team and would like to see some inspiration

I'm getting a bad decrypt when I try to set the env variable using /tests/system/

*** WARNING : deprecated key derivation used.
Using -iter or -pbkdf2 would be better.
bad decrypt
140663209464256:error:06065064:digital envelope routines:EVP_DecryptFinal_ex:bad decrypt:../crypto/evp/evp_enc.c:537:

Doest anyone know why this happens when running the test?

Hi, did anyone have experience in web integration? I've deployed a server and want to send some tracks to this server from my web app, but it always returns me 405 HTTP code? Is there any configuration I'v missed?
Yaroslav Skopets
Hi guys!
I have a question about C++ version of OpenCensus.
In particular, about integration of OpenCensus into Envoy.
At the moment, Envoy configures OpenCensus as a singleton per entire process.
Is it a choice of Envoy to use OpenCensus this way ?
Or may be it's OpenCensus who doesn't allow to have multiple tracing configurations per process ?
Yaroslav Skopets
Thanks in advance!
Yaroslav Skopets
To give you more context why about my question.
Envoy supports multiple alternative tracing providers, e.g. Zipkin, OpenTracing, OpenCensus, Lightstep, Datadog, etc
So, it's absolutely natural for Envoy to have multiple tracing configurations and switch between them if a user wants that.
Yaroslav Skopets
If it was possible to have multiple OpenCensus configurations in parallel, it would enable a use case where a user can set up different exporters for different subsets of traffic passing through Envoy
Hi Experts, anyone has encountered this issue when using oc-agent? census-instrumentation/opencensus-service#640 Thanks!
Vinh Vu
hey all, im having trouble running the example found here: (but exporting to stackdriver). ive installed requests and the extension, but i’m not getting any requests info (http method, status code, etc.) in Google's Cloud Trace. the span does appear though. has anyone else run into this issue? any extra configuration needed to be added?
im running on these versions
code in question:
def initialize_tracer():
    exporter = StackdriverExporter(project_id=‘<PROJECT_ID>’, transport=AsyncTransport)
    return Tracer(exporter=exporter, sampler=AlwaysOnSampler())

tracer = initialize_tracer()
config_integration.trace_integrations(['requests'], tracer=tracer)
with tracer.span(name=’span_name'):
    response = requests.get(url='’)

# Span appears but without any requests information
Vinh Vu
looks like with older versions it works:
Vinh Vu
this is the highest version numbers i can go with it working:
Paul Selden
are there any examples of using stackdriver trace with the python logging module? ideally i just want it so my logs show up with my traces
RNDr. Simon Toth

I'm trying to setup OpenCensus for our project, but I'm running into issues with Bazel. external/io_opencensus_cpp/opencensus/exporters/trace/stackdriver/BUILD:24:1: error loading package '@com_google_googleapis//google/devtools/cloudtrace/v2': Unable to find package for @com_google_googleapis_imports//:imports.bzl: The repository '@com_google_googleapis_imports' could not be resolved. and referenced by '@io_opencensus_cpp//opencensus/exporters/trace/stackdriver:stackdriver_exporter'

Can anyone help?

@HappyCerberus it looks like the WORKSPACE in your project isn't defining the @com_google_googleapis_imports repository. You may be missing this:
RNDr. Simon Toth
@g-easy Yes, thanks, I managed to figure this out. It needed the following snippet, before the OpenCensus import:
Matt Welke

Can anyone help me with a use case with multiple exporters?

I want to have two exporters in my app. They would both export to Stackdriver Monitoring, but each would have a different reporting interval. This is because I'd use one set of metrics for alerting, with a frequent reporting interval, and another set of metrics for information only, with a very infrequent reporting interval, to save money. Stackdriver Monitoring custom metrics are very expensive.

I looked at the documentation for Go and Java metrics, and both of them make it seem like the only way to set up the views and exporters is to register them all globally. It seems like it's all global state, that if you set up a view, you have to have it send metrics to all registered exporters, and vice versa. This would make it seem like I can't do my use case with OpenCensus. Is this true? Or if it's not, does anyone know, how I'd do it?

Shubham Gupta
Screenshot 2020-04-23 at 03.33.12.png
Hi guys, the website is down
RNDr. Simon Toth
I'm using the standard gRPC / StackDriver integrations (C++). It does export some metrics, but one very basic thing that I seem to be missing is the number of RPCs. Is there a way to get at that from the existing exported metrics, or do I need to export a custom one?

Hey people, I have a question with integrating application logs with ocagent exporter.
I am trying to integrate ocagent with my Go application.
I already have added logs with logrus library in my app, the issue is now export to Jaeger.
I am not able to view the logs with the spans.

Can these logs not be configured in the exporter? Or is the Annotate api provided only way to add the logs.

Hi folks,
I'm trying to export stats using OC Python to Stackdriver. My python app is running in a GKE container.
The stats are appearing in Stackdriver (after adding the env variables CONTAINER_NAME and NAMESPACE), however:
  • the stats are not reported against any particular Resource type in Stackdriver. I'd expected that it would be reported against k8s_pod>
    Do I have to explicitly set that up in code when I create the Stackdriver Exporter?
    Isn't GcpMetadataConfig supposed to kick in and detect that it is running in GCP, k8s environment on the basis of the following environment variables being present:
7 replies
Veera Pirla

Hey people, I have a question with integrating application logs with ocagent exporter.
I am trying to integrate ocagent with my Go application.
I already have added logs with logrus library in my app, the issue is now export to Jaeger.
I am not able to view the logs with the spans.

Can these logs not be configured in the exporter? Or is the Annotate api provided only way to add the logs.

Any suggestions on this?

I see lot of clock skew adjustments in my spans, any pointers to debug?
Hi there, we are using oc-agent as side car to collect metrics and metrics, then prometheus is configured to scrapped from oc-agent, and I have observed that oc-agent keeps staled metrics, does anyone have this issue? version used 0.1.11
Pirogov Alexey

Hi folks. We use open-census java lib and need to integrate with upstream systems that don't use tracing. But these systems send us messages with info about when they started/finished processing (in the past).

Is it possible to create "backdated spans" and manually set StartTime and EndTime in the past? I noticed that Span uses Clock object, but it seems that it isn't exposed.

Eric Maland
Hi folks. I'm sending traces from an opencensus exporter to an opencensus agent and aggregating that to jaeger. The exporter has a Service Name configured but the ocagent wants to stomp that (with "OpenCensus" by default), anyone know how I prevent it from rewriting that?
Yonghao Yu
Hi folks, we use opencensus java for metric and tracing. How can I write unit test to verify StatsRecorder record correct metrics? In my code, StatsRecorder is static variable, and I use statsRecorder.newMeasureMap().put().record(tctx); to record metrics. In my test, is there anyway I can get all metrics being recorded and verify those metrics? Thanks!
1 reply
Jonas Jing
Hi there, I'm new to OpenCensus, and I meet a problem. I use metric.getTimeSeriesList() to get a timeseries, and use timeseries.getPoints(), there is always one Point, not a list of Point. Should there be a list of Point?
Hi folks, I'm new to OpenCensus, and I meet a problem. I'm using kubernetes to deploy Jaeger components and the UI is currently not hosted on localhost but on another url provided by ingress. I was using the same piece of code but now traces are not showing on UI, should I make any editions to the code where I create and register JaegerTraceExporter?
Veera Pirla
OCAgent exporter doesn't allow more than 32 annotations for span, Any specific reason?
Bas van Beek
because if you overload your spans with data you're setting yourself up for failure or at least high cost low value.
if you really need to record that much metadata about a particular operation it is better to do so in a log and have correlation between your logs and traces set up.
Veera Pirla
But jaeger exporter sends more than 32 and also opencensus/trace does lets you configure that annotations,why to hardcode?
Bas van Beek
If you feel you should have more available I suggest filing an issue report on the repo. If possible provide a rationale why you would need a higher number.
Chris Dietsch

I've got some major confusions about how to use opencensus in typescript. Almost every example I follow doesn't seem to work for me. I'm using Yarn and electron in the browser context. For example, I want to just confirm this is working with opencensus/nodejs-base so ive done:

yarn add @opencensus/nodejs-base

and following from the docs:

It says to use

(assuming the implication is to do: import * as tracing from '@opencensus/nodejs-base'; like for regular @opencensus/nodejs)

and that tracing type comes back and does not have a tracer, tracing in this context is a TraceBase. What am I doing wrong?

Hello community,
I have a really basic question: why to use openCensus and not azure insights, for app created in azure? Any main reason?
39 replies
Reuben Anderson
Hello, i'm using the python sdk to record stats to azure monitor. I'm seeing that custom metrics just carry on getting logged in the background when my client app is doing nothing. Am I supposed to destroy the measurement map, or something? Or do I quiesce the exporter somehow? confused. Thanks.
13 replies