Does prometheus source_labels can only be labels start with “__”?












0















Is it possible to create a label using the labels that are not start with __?



Backgroud:

I'm working with prometheus and I'm trying to monitor the lvs serivce using node_exporter, So I need a label called vrrp_vs(vrrp virtualserver), it should contains a vip and a port, such as 172.16.10.10:80, I tried to make a leble myself using two lables local_address and local_port of the metric node_ipvs_backend_connections_active, but it got nothing.










share|improve this question





























    0















    Is it possible to create a label using the labels that are not start with __?



    Backgroud:

    I'm working with prometheus and I'm trying to monitor the lvs serivce using node_exporter, So I need a label called vrrp_vs(vrrp virtualserver), it should contains a vip and a port, such as 172.16.10.10:80, I tried to make a leble myself using two lables local_address and local_port of the metric node_ipvs_backend_connections_active, but it got nothing.










    share|improve this question



























      0












      0








      0








      Is it possible to create a label using the labels that are not start with __?



      Backgroud:

      I'm working with prometheus and I'm trying to monitor the lvs serivce using node_exporter, So I need a label called vrrp_vs(vrrp virtualserver), it should contains a vip and a port, such as 172.16.10.10:80, I tried to make a leble myself using two lables local_address and local_port of the metric node_ipvs_backend_connections_active, but it got nothing.










      share|improve this question
















      Is it possible to create a label using the labels that are not start with __?



      Backgroud:

      I'm working with prometheus and I'm trying to monitor the lvs serivce using node_exporter, So I need a label called vrrp_vs(vrrp virtualserver), it should contains a vip and a port, such as 172.16.10.10:80, I tried to make a leble myself using two lables local_address and local_port of the metric node_ipvs_backend_connections_active, but it got nothing.







      prometheus prometheus-node-exporter






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Nov 23 '18 at 1:41







      NOZUONOHIGH

















      asked Nov 22 '18 at 11:23









      NOZUONOHIGHNOZUONOHIGH

      30327




      30327
























          2 Answers
          2






          active

          oldest

          votes


















          0














          You can use PromQL label_join to create a combined label from existing labels.



          label_join(node_ipvs_backend_connections_active, "vrrp_vs", "local_address", ":", "local_port")





          share|improve this answer
























          • Thanks. I have already did this before, but the new label only shows in the new metric, not other metrics, so this isn't what I want.

            – NOZUONOHIGH
            Nov 29 '18 at 8:24



















          0














          Found the solution at last with the help of my leader.



          relabel_configs does only works on the meta labels start with __ before scrape action. But,
          metric_relabel_configs can do the trick.



          metric_relabel_configs will modfify the metric after scraped and before stored in prometheus. This is really amazing!

          Below is what I did.



          metric_relabel_configs:
          - source_labels: [local_address, local_port]
          action: replace
          regex: '(.+);(.+)'
          target_label: virtualserver
          #separator: ':'
          replacement: $1:$2


          regex: '(.+);(.+)' means if both local_address and local_port exist then combine them into one string with seperator ; . replacement: $1:$2 means replace them with
          local_address:local_port format.



          The result:






          share|improve this answer

























            Your Answer






            StackExchange.ifUsing("editor", function () {
            StackExchange.using("externalEditor", function () {
            StackExchange.using("snippets", function () {
            StackExchange.snippets.init();
            });
            });
            }, "code-snippets");

            StackExchange.ready(function() {
            var channelOptions = {
            tags: "".split(" "),
            id: "1"
            };
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function() {
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled) {
            StackExchange.using("snippets", function() {
            createEditor();
            });
            }
            else {
            createEditor();
            }
            });

            function createEditor() {
            StackExchange.prepareEditor({
            heartbeatType: 'answer',
            autoActivateHeartbeat: false,
            convertImagesToLinks: true,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: 10,
            bindNavPrevention: true,
            postfix: "",
            imageUploader: {
            brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
            contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
            allowUrls: true
            },
            onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            });


            }
            });














            draft saved

            draft discarded


















            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53429875%2fdoes-prometheus-source-labels-can-only-be-labels-start-with%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown

























            2 Answers
            2






            active

            oldest

            votes








            2 Answers
            2






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes









            0














            You can use PromQL label_join to create a combined label from existing labels.



            label_join(node_ipvs_backend_connections_active, "vrrp_vs", "local_address", ":", "local_port")





            share|improve this answer
























            • Thanks. I have already did this before, but the new label only shows in the new metric, not other metrics, so this isn't what I want.

              – NOZUONOHIGH
              Nov 29 '18 at 8:24
















            0














            You can use PromQL label_join to create a combined label from existing labels.



            label_join(node_ipvs_backend_connections_active, "vrrp_vs", "local_address", ":", "local_port")





            share|improve this answer
























            • Thanks. I have already did this before, but the new label only shows in the new metric, not other metrics, so this isn't what I want.

              – NOZUONOHIGH
              Nov 29 '18 at 8:24














            0












            0








            0







            You can use PromQL label_join to create a combined label from existing labels.



            label_join(node_ipvs_backend_connections_active, "vrrp_vs", "local_address", ":", "local_port")





            share|improve this answer













            You can use PromQL label_join to create a combined label from existing labels.



            label_join(node_ipvs_backend_connections_active, "vrrp_vs", "local_address", ":", "local_port")






            share|improve this answer












            share|improve this answer



            share|improve this answer










            answered Nov 26 '18 at 21:00









            yamenkyamenk

            12.5k31430




            12.5k31430













            • Thanks. I have already did this before, but the new label only shows in the new metric, not other metrics, so this isn't what I want.

              – NOZUONOHIGH
              Nov 29 '18 at 8:24



















            • Thanks. I have already did this before, but the new label only shows in the new metric, not other metrics, so this isn't what I want.

              – NOZUONOHIGH
              Nov 29 '18 at 8:24

















            Thanks. I have already did this before, but the new label only shows in the new metric, not other metrics, so this isn't what I want.

            – NOZUONOHIGH
            Nov 29 '18 at 8:24





            Thanks. I have already did this before, but the new label only shows in the new metric, not other metrics, so this isn't what I want.

            – NOZUONOHIGH
            Nov 29 '18 at 8:24













            0














            Found the solution at last with the help of my leader.



            relabel_configs does only works on the meta labels start with __ before scrape action. But,
            metric_relabel_configs can do the trick.



            metric_relabel_configs will modfify the metric after scraped and before stored in prometheus. This is really amazing!

            Below is what I did.



            metric_relabel_configs:
            - source_labels: [local_address, local_port]
            action: replace
            regex: '(.+);(.+)'
            target_label: virtualserver
            #separator: ':'
            replacement: $1:$2


            regex: '(.+);(.+)' means if both local_address and local_port exist then combine them into one string with seperator ; . replacement: $1:$2 means replace them with
            local_address:local_port format.



            The result:






            share|improve this answer






























              0














              Found the solution at last with the help of my leader.



              relabel_configs does only works on the meta labels start with __ before scrape action. But,
              metric_relabel_configs can do the trick.



              metric_relabel_configs will modfify the metric after scraped and before stored in prometheus. This is really amazing!

              Below is what I did.



              metric_relabel_configs:
              - source_labels: [local_address, local_port]
              action: replace
              regex: '(.+);(.+)'
              target_label: virtualserver
              #separator: ':'
              replacement: $1:$2


              regex: '(.+);(.+)' means if both local_address and local_port exist then combine them into one string with seperator ; . replacement: $1:$2 means replace them with
              local_address:local_port format.



              The result:






              share|improve this answer




























                0












                0








                0







                Found the solution at last with the help of my leader.



                relabel_configs does only works on the meta labels start with __ before scrape action. But,
                metric_relabel_configs can do the trick.



                metric_relabel_configs will modfify the metric after scraped and before stored in prometheus. This is really amazing!

                Below is what I did.



                metric_relabel_configs:
                - source_labels: [local_address, local_port]
                action: replace
                regex: '(.+);(.+)'
                target_label: virtualserver
                #separator: ':'
                replacement: $1:$2


                regex: '(.+);(.+)' means if both local_address and local_port exist then combine them into one string with seperator ; . replacement: $1:$2 means replace them with
                local_address:local_port format.



                The result:






                share|improve this answer















                Found the solution at last with the help of my leader.



                relabel_configs does only works on the meta labels start with __ before scrape action. But,
                metric_relabel_configs can do the trick.



                metric_relabel_configs will modfify the metric after scraped and before stored in prometheus. This is really amazing!

                Below is what I did.



                metric_relabel_configs:
                - source_labels: [local_address, local_port]
                action: replace
                regex: '(.+);(.+)'
                target_label: virtualserver
                #separator: ':'
                replacement: $1:$2


                regex: '(.+);(.+)' means if both local_address and local_port exist then combine them into one string with seperator ; . replacement: $1:$2 means replace them with
                local_address:local_port format.



                The result:







                share|improve this answer














                share|improve this answer



                share|improve this answer








                edited Nov 29 '18 at 8:52

























                answered Nov 29 '18 at 8:45









                NOZUONOHIGHNOZUONOHIGH

                30327




                30327






























                    draft saved

                    draft discarded




















































                    Thanks for contributing an answer to Stack Overflow!


                    • Please be sure to answer the question. Provide details and share your research!

                    But avoid



                    • Asking for help, clarification, or responding to other answers.

                    • Making statements based on opinion; back them up with references or personal experience.


                    To learn more, see our tips on writing great answers.




                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function () {
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53429875%2fdoes-prometheus-source-labels-can-only-be-labels-start-with%23new-answer', 'question_page');
                    }
                    );

                    Post as a guest















                    Required, but never shown





















































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown

































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown







                    Popular posts from this blog

                    Costa Masnaga

                    Fotorealismo

                    Sidney Franklin