trace-nodejs | Trace is a visualised distributed tracing platform | Microservice library

 by   RisingStack JavaScript Version: v3.18.0 License: Non-SPDX

kandi X-RAY | trace-nodejs Summary

kandi X-RAY | trace-nodejs Summary

trace-nodejs is a JavaScript library typically used in Architecture, Microservice, Nodejs applications. trace-nodejs has no bugs, it has no vulnerabilities and it has low support. However trace-nodejs has a Non-SPDX License. You can install using 'npm i @risingstack/trace' or download it from GitHub, npm.

App | Documentation | Status page | Case study.
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              trace-nodejs has a low active ecosystem.
              It has 474 star(s) with 60 fork(s). There are 28 watchers for this library.
              OutlinedDot
              It had no major release in the last 12 months.
              There are 4 open issues and 35 have been closed. On average issues are closed in 96 days. There are no pull requests.
              It has a neutral sentiment in the developer community.
              The latest version of trace-nodejs is v3.18.0

            kandi-Quality Quality

              trace-nodejs has 0 bugs and 0 code smells.

            kandi-Security Security

              trace-nodejs has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
              trace-nodejs code analysis shows 0 unresolved vulnerabilities.
              There are 0 security hotspots that need review.

            kandi-License License

              trace-nodejs has a Non-SPDX License.
              Non-SPDX licenses can be open source with a non SPDX compliant license, or non open source licenses, and you need to review them closely before use.

            kandi-Reuse Reuse

              trace-nodejs releases are available to install and integrate.
              Deployable package is available in npm.
              Installation instructions, examples and code snippets are available.
              trace-nodejs saves you 8 person hours of effort in developing the same functionality from scratch.
              It has 24 lines of code, 0 functions and 129 files.
              It has low code complexity. Code complexity directly impacts maintainability of the code.

            Top functions reviewed by kandi - BETA

            kandi's functional review helps you automatically verify the functionalities of the libraries and avoid rework.
            Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of trace-nodejs
            Get all kandi verified functions for this library.

            trace-nodejs Key Features

            No Key Features are available at this moment for trace-nodejs.

            trace-nodejs Examples and Code Snippets

            No Code Snippets are available at this moment for trace-nodejs.

            Community Discussions

            QUESTION

            Stackdriver Trace with Google Cloud Run
            Asked 2019-Dec-05 at 05:16

            I have been diving into a Stackdriver Trace integration on Google Cloud Run. I can get it to work with the agent, but I am bothered by a few questions.

            Given that
            • The Stackdriver agent aggregates traces in a small buffer and sends them periodically.
            • CPU access is restricted when a Cloud Run service is not handling a request.
            • There is no shutdown hook for Cloud Run services; you can't clear the buffer before shutdown: the container just gets a SIGKILL. This is a signal you can't catch from your application.
            • Running a background process that sends information outside of the request-response cycle seems to violate the Knative Container Runtime contract
            • The collections of logging data is documented and does not require me to run an agent, but there is no such solution for telemetry.
            • I found one report of someone experiencing lost traces on Cloud Run using the agent-based approach
            How Google does it

            I went into the source code for the Cloud Endpoints ESP, (the Cloud Run integration is in beta) to see if they solve it in a different way, but there the same pattern is used: there is a buffer with traces (1s) and it is cleared periodically.

            Question

            While my tracing integration seems to work in my test setup, I am worried about incomplete and missing traces when I run this in a production environment.

            • Is this a hypothetical problem or a real issue?

            • It looks like the right way to approach this is to write telemetry to logs, instead of using an agent process. Is that supported with Stackdriver Trace?

            ...

            ANSWER

            Answered 2019-Dec-03 at 23:05

            You're right. This is a fair concern since most tracing libraries tend to sample/upload trace spans in the background.

            Since (1) your CPU is nearly scaled nearly to zero when the container isn't handling any requests and (2) the container instance can be killed any time due to inactivity, you cannot reliably upload those trace spans collected in your app. As you said, it may sometimes work since we don't fully stop CPU, but it won't always work.

            It appears like some of the Stackdriver (and/or OpenTelemetry f.k.a. OpenCensus) libraries let you control the lifecycle of pushing trace spans.

            For example, this Go package for OpenCensus Stackdriver exporter has a Flush() method that you can call before completing your request rather than relying on the runtime to periodically upload the trace spans: https://godoc.org/contrib.go.opencensus.io/exporter/stackdriver#Exporter.Flush

            I assume other tracing libraries in other languages also expose similar Flush() methods, if not, please let me know in the comments and this would be a valid feature request to those libraries.

            Source https://stackoverflow.com/questions/59157906

            QUESTION

            Google Cloud trace Custom trace only works a few times
            Asked 2018-Nov-07 at 14:57

            I have activated Google Cloud Tracer with nodejs & express, works well in automatic mode, registers calls to the api correctly.

            I try to create a trace manually, to know the execution time of intermediate steps.

            ...

            ANSWER

            Answered 2018-Nov-05 at 17:59

            If you have automatic tracing enabled and also generate root spans within a request listener using the custom span API, then the root span will be ignored because it was created within a pre-existing root span (the one that was automatically started for this request). This is my guess based on the code presented here, but you should be able to accomplish what you want by instead creating a child span. (Custom root spans are meant for work that occur outside of a request's lifecycle -- such as periodic work.)

            Re: Express.js middleware context -- I am not exactly sure what you mean here, but the Trace Agent doesn't store any of the request listener arguments in the trace context.

            As an additional note -- you'll get a quicker response time if you report an issue directly to the GitHub repository to which you linked.

            Hope this helps!

            Source https://stackoverflow.com/questions/52988854

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install trace-nodejs

            As Trace uses scoped packages, be sure to use npm version greater than 2.7.0. Trace depends on a couple of native addons. We host precompiled binaries of these for Linux and Darwin 64-bit platforms at https://oss.risingstack.com. The installer will attempt to download these dependencies, so it should be allowed through your firewall, or else the download will fail and the installer will fall back to building from source. This also happens if there isn't a precompiled binary for your platform. Note that compiling native addons requires native toolchain. After you installed Trace as a dependency, you just require it at the beginning of your main file.

            Support

            For any new features, suggestions and bugs create an issue on GitHub. If you have any questions check and ask questions on community page Stack Overflow .
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries
            CLONE
          • HTTPS

            https://github.com/RisingStack/trace-nodejs.git

          • CLI

            gh repo clone RisingStack/trace-nodejs

          • sshUrl

            git@github.com:RisingStack/trace-nodejs.git

          • Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link