VictoriaMetrics | effective monitoring solution and time series database | Monitoring library

 by   VictoriaMetrics Go Version: v1.91.2 License: Apache-2.0

kandi X-RAY | VictoriaMetrics Summary

kandi X-RAY | VictoriaMetrics Summary

VictoriaMetrics is a Go library typically used in Performance Management, Monitoring, Prometheus, Grafana applications. VictoriaMetrics has no bugs, it has no vulnerabilities, it has a Permissive License and it has medium support. You can download it from GitHub.

VictoriaMetrics is a fast, cost-effective and scalable monitoring solution and time series database. VictoriaMetrics is available in binary releases, Docker images, Snap packages and source code. Just download VictoriaMetrics and follow these instructions. Then read Prometheus setup and Grafana setup docs.

            kandi-support Support

              VictoriaMetrics has a medium active ecosystem.
              It has 8661 star(s) with 879 fork(s). There are 133 watchers for this library.
              There were 2 major release(s) in the last 12 months.
              There are 643 open issues and 1711 have been closed. On average issues are closed in 51 days. There are 32 open pull requests and 0 closed requests.
              It has a neutral sentiment in the developer community.
              The latest version of VictoriaMetrics is v1.91.2

            kandi-Quality Quality

              VictoriaMetrics has 0 bugs and 0 code smells.

            kandi-Security Security

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

            kandi-License License

              VictoriaMetrics is licensed under the Apache-2.0 License. This license is Permissive.
              Permissive licenses have the least restrictions, and you can use them in most projects.

            kandi-Reuse Reuse

              VictoriaMetrics releases are available to install and integrate.
              Installation instructions, examples and code snippets are available.
              It has 110498 lines of code, 3962 functions and 632 files.
              It has high 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 VictoriaMetrics
            Get all kandi verified functions for this library.

            VictoriaMetrics Key Features

            No Key Features are available at this moment for VictoriaMetrics.

            VictoriaMetrics Examples and Code Snippets

            No Code Snippets are available at this moment for VictoriaMetrics.

            Community Discussions


            How do I pass a command line argument to a service container?
            Asked 2022-Apr-04 at 19:08

            I am trying to set up a bitbucket pipeline that uses a database service provided by a docker container. However, in order to get the database service started correctly, I need to pass an argument to be received by the database container's ENTRYPOINT. I see from the pipeline service doc that it's possible to send variables to the service's docker container, but the option I need to set isn't settable by an environment variable, only by a command line argument.

            When I run the database's docker image locally using docker run, I am able to set the option just by adding it to the end of the docker run command, and it gets correctly applied to the container's ENTRYPOINT, so it seems like this should be straightforward, I just can't figure out where to put the argument in bitbucket-pipelines.yml.

            Below is my bitbucket-pipelines.yml. Everything about it works great except that I need a way to pass a command line argument to the victoria-metrics container at the end of the file.



            Answered 2022-Apr-04 at 19:08

            According to Mark C from Atlassian, there is presently no way to pass command line arguments to service containers. However, he has created a feature request for this capability, which you are welcome to vote for if interested.

            In the meantime, the suggested workarounds are:

            1. You can start the service container by running a Docker command within Pipelines as long as the command is not restricted. You can check this link for more information about Docker restricted commands on Pipelines.
            2. You can create your own Docker image (using Dockerfile) and upload it to Docker Hub then use that image as a service container on Pipelines



            AWS EKS EFS mounted volume. In spite 21Gi in claimed volume the pod has 8E (full possible size of EFS)
            Asked 2021-Nov-11 at 02:36

            In spite 21Gi being set in claimed volume, the pod has 8E (full possible size of EFS)

            Is it OK and storage size is limited. Or did I make a mistake in configuration and there needs to change, or something other?

            I will be appreciated for your help.




            Answered 2021-Nov-11 at 02:36

            The number "8E" serves as an indicator, it is not a real quota. AWS EFS does not support quota (eg. FATTR4_QUOTA_AVAIL_HARD). It generally means you have "unlimited" space on this mount. There's nothing wrong with your spec; the number specified in the PVC's is used to match PV's It doesn't mean you can only write 21GB on the EFS mount.



            Amazon EKS (NFS) to Kubernetes pod. Can't mount volume
            Asked 2021-Nov-10 at 02:26

            I'm working on attaching Amazon EKS (NFS) to Kubernetes pod using terraform.

            Everything runs without an error and is created:

            • Pod victoriametrics
            • Storage Classes
            • Persistent Volumes
            • Persistent Volume Claims

            However, the volume victoriametrics-data doesn't attach to the pod. Anyway, I can't see one in the pod's shell. Could someone be so kind to help me understand where I'm wrong, please?

            I have cut some unimportant code for the question to get code shorted.



            Answered 2021-Nov-10 at 02:26

            You need to use the persistent volume claim that you have created instead of emptyDir in your deployment:



            MetricQL function inside the PromQL
            Asked 2021-Nov-09 at 11:12

            Im using a dashboard from here and it is using a function called topk_max I found that this is from MeticQL. But Im using prometheus.

            Is there any way to replicate the function in PromQL?



            Answered 2021-Nov-08 at 23:59

            I think you're searching for the "topk" aggregation operator.

            More info at the Prometheus documentation here.



            Does VictoriaMetrics have some way to store string value instead float64?
            Asked 2021-Mar-15 at 22:22

            I'm using basic victoria metrics via docker image and import the float value via prometheus:



            Answered 2021-Mar-15 at 22:22

            but maybe we have some way to store the errors that occurred for example?

            Unfortunately, no. You can put string values into labels, but metric value will be only float64.

            which prometheus type is stored in victoriaMetrics when we're using /api/v1/import/prometheus? Untyped?

            While the exposition format for metric type exists, neither Prometheus nor VictoriaMetrics do make use of it yet. You can skip all the comments when importing in VM for now. But this may change in future.



            Docker: Can't scrape SonarQube with VictoriaMetrics "vmagent", connection refused
            Asked 2021-Feb-03 at 14:20

            I'm in the process of building a docker-compose.yml and want to use VictoriaMetrics own scraper (vmagent) to scrape metrics which SonarQube exposes via a Plugin at /api/prometheus/metrics.

            If docker is running, I can access localhost:9000/api/prometheus/metrics and see all my metrics. However, vmagent is throwing the following error every 60 seconds (which means at least my prometheus.yml config is being used correctly):



            Answered 2021-Feb-03 at 14:20

            Within vmagent container localhost will mean vmagent itself. Try to refer with service name sonarqube:9000 instead of localhost:9000.



            Linear interpolation in PromQL or MetricsQL
            Asked 2020-Aug-11 at 16:19

            I am evaluating VictoriaMetrics for an IoT application where we sometimes have gaps in a series due to hardware or communication issues. In some time series reporting situations it is helpful for us to interpolate values for the missing time intervals. I see that MetricsQL (which extends PromQL) has a keep_last_value() function that will fill gaps by holding the last observed value until a new one appears (which will be helpful to us) but in some situations a linear interpolation between the values before and after the gap is a more realistic estimate for the missing portion. Is there a function in PromQL or MetricsQL that will do linear interpolation of missing data in a series, or is it possible to construct a more complex query that will achieve this?

            Clarifying the desired interpolation

            What I would like is a simple interpolation between the points immediately before and after the gap; this is, I believe, what TimescaleDB's interpolate() function does. In other words, if my time series is:



            Answered 2020-Jul-08 at 22:21

            Final answer

            Use the interpolate function, now available in VictoriaMetrics starting from v1.38.0.

            Original suggestion

            This does not achieve the exact interpolation requested in the revised question, but may be useful for others with slightly different requirements

            Try combining predict_linear function with default operator from MetricsQL in the following way:


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


            No vulnerabilities reported

            Install VictoriaMetrics

            Add the following lines to Prometheus config file (it is usually located at /etc/prometheus/prometheus.yml) in order to send data to VictoriaMetrics:.
            Create Prometheus datasource in Grafana with the following url:. Substitute <victoriametrics-addr> with the hostname or IP address of VictoriaMetrics. Then build graphs and dashboards for the created datasource using PromQL or MetricsQL.
            It is safe upgrading VictoriaMetrics to new versions unless release notes say otherwise. It is safe skipping multiple versions during the upgrade unless release notes say otherwise. It is recommended performing regular upgrades to the latest version, since it may contain important bug fixes, performance optimizations or new features. It is also safe downgrading to older versions unless release notes say otherwise.
            Send SIGINT signal to VictoriaMetrics process in order to gracefully stop it.
            Wait until the process stops. This can take a few seconds.
            Start the upgraded VictoriaMetrics.
            We recommend using either binary releases or docker images instead of building VictoriaMetrics from sources. Building from sources is reasonable when developing additional features specific to your needs or when testing bugfixes.
            Install Go. The minimum supported version is Go 1.17.
            Run make victoria-metrics from the root folder of the repository. It builds victoria-metrics binary and puts it into the bin folder.
            Install docker.
            Run make victoria-metrics-prod from the root folder of the repository. It builds victoria-metrics-prod binary and puts it into the bin folder.
            ARM build may run on Raspberry Pi or on energy-efficient ARM servers.
            Install Go. The minimum supported version is Go 1.17.
            Run make victoria-metrics-arm or make victoria-metrics-arm64 from the root folder of the repository. It builds victoria-metrics-arm or victoria-metrics-arm64 binary respectively and puts it into the bin folder.
            Install docker.
            Run make victoria-metrics-arm-prod or make victoria-metrics-arm64-prod from the root folder of the repository. It builds victoria-metrics-arm-prod or victoria-metrics-arm64-prod binary respectively and puts it into the bin folder.
            Pure Go mode builds only Go code without cgo dependencies.
            Install Go. The minimum supported version is Go 1.17.
            Run make victoria-metrics-pure from the root folder of the repository. It builds victoria-metrics-pure binary and puts it into the bin folder.
            Read these instructions on how to set up VictoriaMetrics as a service in your OS. There is also snap package for Ubuntu.


            It is recommended to use default command-line flag values (i.e. don't set them explicitly) until the need of tweaking these flag values arises. It is recommended inspecting logs during troubleshooting, since they may contain useful information.
            Find more information at:

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

            Find more libraries
          • HTTPS


          • CLI

            gh repo clone VictoriaMetrics/VictoriaMetrics

          • sshUrl


          • Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link

            Reuse Pre-built Kits with VictoriaMetrics

            Consider Popular Monitoring Libraries


            by netdata


            by getsentry


            by apache


            by osquery


            by dianping

            Try Top Libraries by VictoriaMetrics


            by VictoriaMetricsGo


            by VictoriaMetricsGo


            by VictoriaMetricsGo


            by VictoriaMetricsGo


            by VictoriaMetricsPython