Azure log alert rule created successfully with ARM template but not appearing in portal












0














I have created a few ARM templates for deploying Azure metric alert rules, but I now have a requirement to deploy a log alert rule (i.e. a rule based on an Application Insights query rather than a platform metric).



I have scripted the template following the example here (which suggests I need to create a resource of type Microsoft.Insights/scheduledQueryRules) and deployed using Azure portal's Template Deployment service as described here.



Azure reports the deployment as successful, and the activity log gives me the deployment result, including the ID of my new resource e.g. /subscriptions/[subscription-id]/resourcegroups/[alerts-resource-group]/providers/Microsoft.Insights/scheduledQueryRules/Custom errors spike alert.



However, when I navigate to the Monitor blade in subscription [subscription-id], and filter down by resource group [alerts-resource-group] I don't see my new alert.



As a sanity check I created a metric alert using the same process targeting the same App Insights resource, and this one does show up in the Monitor blade.



I guess my question is, am I misunderstanding something about log-based alert rules? For example, does an Azure 'resource' of type Microsoft.Insights/scheduledQueryRules equate with alert rules of signal type Log Search in Monitor / Alerts / Manage alert rules? I'm confident my template is correct because it passes validation and completed successfully. But I'm baffled about where the alert rule is ending up!



One thing I should mention is that I'm creating the alert rule in a different resource group to the App Insights instance itself, but this is also true of the metric alert so assumed this wasn't significant.










share|improve this question





























    0














    I have created a few ARM templates for deploying Azure metric alert rules, but I now have a requirement to deploy a log alert rule (i.e. a rule based on an Application Insights query rather than a platform metric).



    I have scripted the template following the example here (which suggests I need to create a resource of type Microsoft.Insights/scheduledQueryRules) and deployed using Azure portal's Template Deployment service as described here.



    Azure reports the deployment as successful, and the activity log gives me the deployment result, including the ID of my new resource e.g. /subscriptions/[subscription-id]/resourcegroups/[alerts-resource-group]/providers/Microsoft.Insights/scheduledQueryRules/Custom errors spike alert.



    However, when I navigate to the Monitor blade in subscription [subscription-id], and filter down by resource group [alerts-resource-group] I don't see my new alert.



    As a sanity check I created a metric alert using the same process targeting the same App Insights resource, and this one does show up in the Monitor blade.



    I guess my question is, am I misunderstanding something about log-based alert rules? For example, does an Azure 'resource' of type Microsoft.Insights/scheduledQueryRules equate with alert rules of signal type Log Search in Monitor / Alerts / Manage alert rules? I'm confident my template is correct because it passes validation and completed successfully. But I'm baffled about where the alert rule is ending up!



    One thing I should mention is that I'm creating the alert rule in a different resource group to the App Insights instance itself, but this is also true of the metric alert so assumed this wasn't significant.










    share|improve this question



























      0












      0








      0







      I have created a few ARM templates for deploying Azure metric alert rules, but I now have a requirement to deploy a log alert rule (i.e. a rule based on an Application Insights query rather than a platform metric).



      I have scripted the template following the example here (which suggests I need to create a resource of type Microsoft.Insights/scheduledQueryRules) and deployed using Azure portal's Template Deployment service as described here.



      Azure reports the deployment as successful, and the activity log gives me the deployment result, including the ID of my new resource e.g. /subscriptions/[subscription-id]/resourcegroups/[alerts-resource-group]/providers/Microsoft.Insights/scheduledQueryRules/Custom errors spike alert.



      However, when I navigate to the Monitor blade in subscription [subscription-id], and filter down by resource group [alerts-resource-group] I don't see my new alert.



      As a sanity check I created a metric alert using the same process targeting the same App Insights resource, and this one does show up in the Monitor blade.



      I guess my question is, am I misunderstanding something about log-based alert rules? For example, does an Azure 'resource' of type Microsoft.Insights/scheduledQueryRules equate with alert rules of signal type Log Search in Monitor / Alerts / Manage alert rules? I'm confident my template is correct because it passes validation and completed successfully. But I'm baffled about where the alert rule is ending up!



      One thing I should mention is that I'm creating the alert rule in a different resource group to the App Insights instance itself, but this is also true of the metric alert so assumed this wasn't significant.










      share|improve this question















      I have created a few ARM templates for deploying Azure metric alert rules, but I now have a requirement to deploy a log alert rule (i.e. a rule based on an Application Insights query rather than a platform metric).



      I have scripted the template following the example here (which suggests I need to create a resource of type Microsoft.Insights/scheduledQueryRules) and deployed using Azure portal's Template Deployment service as described here.



      Azure reports the deployment as successful, and the activity log gives me the deployment result, including the ID of my new resource e.g. /subscriptions/[subscription-id]/resourcegroups/[alerts-resource-group]/providers/Microsoft.Insights/scheduledQueryRules/Custom errors spike alert.



      However, when I navigate to the Monitor blade in subscription [subscription-id], and filter down by resource group [alerts-resource-group] I don't see my new alert.



      As a sanity check I created a metric alert using the same process targeting the same App Insights resource, and this one does show up in the Monitor blade.



      I guess my question is, am I misunderstanding something about log-based alert rules? For example, does an Azure 'resource' of type Microsoft.Insights/scheduledQueryRules equate with alert rules of signal type Log Search in Monitor / Alerts / Manage alert rules? I'm confident my template is correct because it passes validation and completed successfully. But I'm baffled about where the alert rule is ending up!



      One thing I should mention is that I'm creating the alert rule in a different resource group to the App Insights instance itself, but this is also true of the metric alert so assumed this wasn't significant.







      azure azure-devops arm-template






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Nov 19 '18 at 17:21

























      asked Nov 19 '18 at 17:04









      getsetcode

      1,64011432




      1,64011432
























          1 Answer
          1






          active

          oldest

          votes


















          0














          It turns out log alerts require a hidden link to the resource they're monitoring. Otherwise they get created but not listed anywhere in the portal.



          In my case I added the following variable to the template:



          "linkToAiResource" : "[concat('hidden-link:', resourceId('microsoft.insights/components', parameters('appInsightsResourceName')))]"


          Then included this as a tag in the resource definition like this:



          "tags": {
          "[variables('linkToAiResource')]": "Resource"
          }


          Once redeployed the alert rule appears in the portal's Monitor blade.






          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%2f53379479%2fazure-log-alert-rule-created-successfully-with-arm-template-but-not-appearing-in%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown

























            1 Answer
            1






            active

            oldest

            votes








            1 Answer
            1






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes









            0














            It turns out log alerts require a hidden link to the resource they're monitoring. Otherwise they get created but not listed anywhere in the portal.



            In my case I added the following variable to the template:



            "linkToAiResource" : "[concat('hidden-link:', resourceId('microsoft.insights/components', parameters('appInsightsResourceName')))]"


            Then included this as a tag in the resource definition like this:



            "tags": {
            "[variables('linkToAiResource')]": "Resource"
            }


            Once redeployed the alert rule appears in the portal's Monitor blade.






            share|improve this answer


























              0














              It turns out log alerts require a hidden link to the resource they're monitoring. Otherwise they get created but not listed anywhere in the portal.



              In my case I added the following variable to the template:



              "linkToAiResource" : "[concat('hidden-link:', resourceId('microsoft.insights/components', parameters('appInsightsResourceName')))]"


              Then included this as a tag in the resource definition like this:



              "tags": {
              "[variables('linkToAiResource')]": "Resource"
              }


              Once redeployed the alert rule appears in the portal's Monitor blade.






              share|improve this answer
























                0












                0








                0






                It turns out log alerts require a hidden link to the resource they're monitoring. Otherwise they get created but not listed anywhere in the portal.



                In my case I added the following variable to the template:



                "linkToAiResource" : "[concat('hidden-link:', resourceId('microsoft.insights/components', parameters('appInsightsResourceName')))]"


                Then included this as a tag in the resource definition like this:



                "tags": {
                "[variables('linkToAiResource')]": "Resource"
                }


                Once redeployed the alert rule appears in the portal's Monitor blade.






                share|improve this answer












                It turns out log alerts require a hidden link to the resource they're monitoring. Otherwise they get created but not listed anywhere in the portal.



                In my case I added the following variable to the template:



                "linkToAiResource" : "[concat('hidden-link:', resourceId('microsoft.insights/components', parameters('appInsightsResourceName')))]"


                Then included this as a tag in the resource definition like this:



                "tags": {
                "[variables('linkToAiResource')]": "Resource"
                }


                Once redeployed the alert rule appears in the portal's Monitor blade.







                share|improve this answer












                share|improve this answer



                share|improve this answer










                answered Nov 22 '18 at 9:48









                getsetcode

                1,64011432




                1,64011432






























                    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.





                    Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


                    Please pay close attention to the following guidance:


                    • 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%2f53379479%2fazure-log-alert-rule-created-successfully-with-arm-template-but-not-appearing-in%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

                    android studio warns about leanback feature tag usage required on manifest while using Unity exported app?

                    SQL update select statement

                    'app-layout' is not a known element: how to share Component with different Modules