Share via

SignalR Auto Scale In does not trigger when condition meet

pipi 25 Reputation points
2026-03-02T06:25:03.0333333+00:00

I have setup a metric conditions for scale in/out of SignalR. The scale out works perfectly but it will not scale in. The conditions was at below:

User's image

When the ConnectionCount (Max) is less than 930, it does not trigger. May I know how to resolve the problem?

Azure SignalR Service
Azure SignalR Service

An Azure service that is used for adding real-time communications to web applications.


2 answers

Sort by: Most helpful
  1. Golla Venkata Pavani 3,810 Reputation points Microsoft External Staff Moderator
    2026-03-03T13:25:05.7333333+00:00

    Hi @pipi

    Thank you for the clarification and apologies again for any confusion.

    The likely cause is a mismatch in your scale-in rule: Time grain statistic = Maximum but Time aggregation = Average. This evaluates the average of per-minute maximums over 5 minutes, so even minor spikes can keep the value >930, blocking scale-in despite low averages.

    Quick fix:

    • Change Time grain statistic to Average (recommended for consistent low-load detection).
    • Optionally set Time aggregation to Average too, and increase Duration to 10 minutes.

    Microsoft recommends using Connection Quota Utilization (%) for rules instead of raw Connection Count (e.g., scale in <20–30%) for better reliability and headroom.

    Save, then monitor Autoscale history under low load. If it still doesn't trigger, check Metrics (Max aggregation, 1-min grain) and recent scale events.

    Kindly let us know If you have any additional details or concerns in the meantime.

    Please "upvote" if the information helped you. This will help us and others in the community as well.

    0 comments No comments

  2. Deepanshu katara 18,145 Reputation points MVP Volunteer Moderator
    2026-03-02T08:29:13.4933333+00:00

    Hello , Welcome to MS Q&A

    The most likely issue is a time aggregation mismatch in the autoscale configuration.

    Currently, the scale-in rule is configured as:

    Time Grain Statistic: Maximum

    Time Aggregation: Average

    This mismatch prevents the scale-in action from triggering correctly.

    Why This Is a Problem

    You are checking whether:

    Connection Count (Maximum) ≤ 930

    However, Azure evaluates the average of the maximum values over the selected duration.

    This means that if even one minute within the evaluation period has a maximum value greater than 930, the calculated average may still exceed 930 — even if the current maximum value is below 930.

    As a result, the scale-in condition does not get satisfied.

    Quick Fix

    Update the scale-in rule so that the aggregation matches the statistic.

    Current (Incorrect):

    Time Grain Statistic: Maximum

    Time Aggregation: Average

    Correct Configuration:

    Time Grain Statistic: Maximum

    Time Aggregation: Maximum

    The aggregation must align with the selected statistic.


    Update the rule as follows:

    • Metric: Connection Count

    Dimension: Endpoint of connections = All values

    Operator: Less than or equal to

    Threshold: 930

    Duration: 10 minutes (increase from 5 minutes)

    Time Grain: 1 minute

    Time Grain Statistic: Maximum

    Time Aggregation: Maximum

    Action: Decrease count by 1

    Cool Down: 10 minutes (increase from 5 minutes)

    Pls check and let us know.

    Thanks

    Deepanshu


Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.