diff --git a/src/azure-cli/azure/cli/command_modules/monitor/grammar/MetricAlertCondition.g4 b/src/azure-cli/azure/cli/command_modules/monitor/grammar/MetricAlertCondition.g4 index c5cd5f8cd68..1d91f84d475 100644 --- a/src/azure-cli/azure/cli/command_modules/monitor/grammar/MetricAlertCondition.g4 +++ b/src/azure-cli/azure/cli/command_modules/monitor/grammar/MetricAlertCondition.g4 @@ -34,7 +34,7 @@ dim_name : WORD WHITESPACE ; dim_values : dim_value (dim_val_separator dim_value)* ; -dim_value : (NUMBER | WORD | '-' | '.' | '*' | WHITESPACE | ':')+ ; +dim_value : (NUMBER | WORD | '-' | '.' | '*' | WHITESPACE | ':'| '~')+ ; /* LEXER RULES */ diff --git a/src/azure-cli/azure/cli/command_modules/monitor/grammar/MetricAlertConditionLexer.py b/src/azure-cli/azure/cli/command_modules/monitor/grammar/MetricAlertConditionLexer.py index e1b964fdf49..44a721d6186 100644 --- a/src/azure-cli/azure/cli/command_modules/monitor/grammar/MetricAlertConditionLexer.py +++ b/src/azure-cli/azure/cli/command_modules/monitor/grammar/MetricAlertConditionLexer.py @@ -2,11 +2,10 @@ # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. # -------------------------------------------------------------------------------------------- +# encoding: utf-8 # pylint: disable=all - # Generated from MetricAlertCondition.g4 by ANTLR 4.7.2 -# encoding: utf-8 from __future__ import print_function from antlr4 import * from io import StringIO @@ -17,91 +16,94 @@ def serializedATN(): with StringIO() as buf: buf.write(u"\3\u608b\ua72a\u8133\ub9ed\u417c\u3be7\u7786\u5964\2") - buf.write(u"\26\u00d0\b\1\4\2\t\2\4\3\t\3\4\4\t\4\4\5\t\5\4\6\t\6") + buf.write(u"\27\u00d4\b\1\4\2\t\2\4\3\t\3\4\4\t\4\4\5\t\5\4\6\t\6") buf.write(u"\4\7\t\7\4\b\t\b\4\t\t\t\4\n\t\n\4\13\t\13\4\f\t\f\4") buf.write(u"\r\t\r\4\16\t\16\4\17\t\17\4\20\t\20\4\21\t\21\4\22\t") buf.write(u"\22\4\23\t\23\4\24\t\24\4\25\t\25\4\26\t\26\4\27\t\27") buf.write(u"\4\30\t\30\4\31\t\31\4\32\t\32\4\33\t\33\4\34\t\34\4") buf.write(u"\35\t\35\4\36\t\36\4\37\t\37\4 \t \4!\t!\4\"\t\"\4#\t") - buf.write(u"#\4$\t$\4%\t%\4&\t&\3\2\3\2\3\3\3\3\3\4\3\4\3\5\3\5\3") - buf.write(u"\6\3\6\3\7\3\7\3\b\3\b\3\t\3\t\3\n\3\n\3\13\3\13\3\f") - buf.write(u"\3\f\3\r\3\r\3\16\3\16\3\17\3\17\3\20\3\20\3\21\3\21") - buf.write(u"\3\22\3\22\3\23\3\23\3\24\3\24\3\25\3\25\3\26\3\26\3") - buf.write(u"\27\3\27\3\30\3\30\3\31\3\31\3\32\3\32\3\33\3\33\3\34") - buf.write(u"\3\34\3\34\3\34\3\34\3\34\3\35\3\35\3\35\3\35\3\36\3") - buf.write(u"\36\3\36\3\36\3\36\3\36\3\36\3\36\3\36\3\37\3\37\3\37") - buf.write(u"\3\37\3\37\3\37\3\37\3\37\3\37\3 \3 \3 \3!\3!\3!\3!\3") - buf.write(u"!\3!\3!\3!\3!\5!\u00aa\n!\3\"\6\"\u00ad\n\"\r\"\16\"") - buf.write(u"\u00ae\3\"\3\"\6\"\u00b3\n\"\r\"\16\"\u00b4\5\"\u00b7") - buf.write(u"\n\"\3#\3#\3$\6$\u00bc\n$\r$\16$\u00bd\3%\5%\u00c1\n") - buf.write(u"%\3%\3%\6%\u00c5\n%\r%\16%\u00c6\3&\3&\3&\3&\6&\u00cd") - buf.write(u"\n&\r&\16&\u00ce\2\2\'\3\3\5\4\7\5\t\6\13\7\r\b\17\t") - buf.write(u"\21\n\23\13\25\2\27\2\31\2\33\2\35\2\37\2!\2#\2%\2\'") - buf.write(u"\2)\2+\2-\2/\2\61\2\63\2\65\2\67\f9\r;\16=\17?\20A\21") - buf.write(u"C\22E\23G\24I\25K\26\3\2\26\4\2CCcc\4\2EEee\4\2FFff\4") - buf.write(u"\2GGgg\4\2JJjj\4\2KKkk\4\2NNnn\4\2PPpp\4\2QQqq\4\2TT") - buf.write(u"tt\4\2UUuu\4\2WWww\4\2YYyy\4\2ZZzz\3\2\62;\3\2c|\3\2") - buf.write(u"C\\\4\2..\60\60\4\2$$))\4\2\13\13\"\"\2\u00ce\2\3\3\2") - buf.write(u"\2\2\2\5\3\2\2\2\2\7\3\2\2\2\2\t\3\2\2\2\2\13\3\2\2\2") - buf.write(u"\2\r\3\2\2\2\2\17\3\2\2\2\2\21\3\2\2\2\2\23\3\2\2\2\2") - buf.write(u"\67\3\2\2\2\29\3\2\2\2\2;\3\2\2\2\2=\3\2\2\2\2?\3\2\2") - buf.write(u"\2\2A\3\2\2\2\2C\3\2\2\2\2E\3\2\2\2\2G\3\2\2\2\2I\3\2") - buf.write(u"\2\2\2K\3\2\2\2\3M\3\2\2\2\5O\3\2\2\2\7Q\3\2\2\2\tS\3") - buf.write(u"\2\2\2\13U\3\2\2\2\rW\3\2\2\2\17Y\3\2\2\2\21[\3\2\2\2") - buf.write(u"\23]\3\2\2\2\25_\3\2\2\2\27a\3\2\2\2\31c\3\2\2\2\33e") - buf.write(u"\3\2\2\2\35g\3\2\2\2\37i\3\2\2\2!k\3\2\2\2#m\3\2\2\2") - buf.write(u"%o\3\2\2\2\'q\3\2\2\2)s\3\2\2\2+u\3\2\2\2-w\3\2\2\2/") - buf.write(u"y\3\2\2\2\61{\3\2\2\2\63}\3\2\2\2\65\177\3\2\2\2\67\u0081") - buf.write(u"\3\2\2\29\u0087\3\2\2\2;\u008b\3\2\2\2=\u0094\3\2\2\2") - buf.write(u"?\u009d\3\2\2\2A\u00a9\3\2\2\2C\u00ac\3\2\2\2E\u00b8") - buf.write(u"\3\2\2\2G\u00bb\3\2\2\2I\u00c4\3\2\2\2K\u00cc\3\2\2\2") - buf.write(u"MN\7\60\2\2N\4\3\2\2\2OP\7\61\2\2P\6\3\2\2\2QR\7a\2\2") - buf.write(u"R\b\3\2\2\2ST\7^\2\2T\n\3\2\2\2UV\7<\2\2V\f\3\2\2\2W") - buf.write(u"X\7\'\2\2X\16\3\2\2\2YZ\7.\2\2Z\20\3\2\2\2[\\\7/\2\2") - buf.write(u"\\\22\3\2\2\2]^\7,\2\2^\24\3\2\2\2_`\t\2\2\2`\26\3\2") - buf.write(u"\2\2ab\t\3\2\2b\30\3\2\2\2cd\t\4\2\2d\32\3\2\2\2ef\t") - buf.write(u"\5\2\2f\34\3\2\2\2gh\t\6\2\2h\36\3\2\2\2ij\t\7\2\2j ") - buf.write(u"\3\2\2\2kl\t\b\2\2l\"\3\2\2\2mn\t\t\2\2n$\3\2\2\2op\t") - buf.write(u"\n\2\2p&\3\2\2\2qr\t\13\2\2r(\3\2\2\2st\t\f\2\2t*\3\2") - buf.write(u"\2\2uv\t\r\2\2v,\3\2\2\2wx\t\16\2\2x.\3\2\2\2yz\t\17") - buf.write(u"\2\2z\60\3\2\2\2{|\t\20\2\2|\62\3\2\2\2}~\t\21\2\2~\64") - buf.write(u"\3\2\2\2\177\u0080\t\22\2\2\u0080\66\3\2\2\2\u0081\u0082") - buf.write(u"\5-\27\2\u0082\u0083\5\35\17\2\u0083\u0084\5\33\16\2") - buf.write(u"\u0084\u0085\5\'\24\2\u0085\u0086\5\33\16\2\u00868\3") - buf.write(u"\2\2\2\u0087\u0088\5\25\13\2\u0088\u0089\5#\22\2\u0089") - buf.write(u"\u008a\5\31\r\2\u008a:\3\2\2\2\u008b\u008c\5\37\20\2") - buf.write(u"\u008c\u008d\5#\22\2\u008d\u008e\5\27\f\2\u008e\u008f") - buf.write(u"\5!\21\2\u008f\u0090\5+\26\2\u0090\u0091\5\31\r\2\u0091") - buf.write(u"\u0092\5\33\16\2\u0092\u0093\5)\25\2\u0093<\3\2\2\2\u0094") - buf.write(u"\u0095\5\33\16\2\u0095\u0096\5/\30\2\u0096\u0097\5\27") - buf.write(u"\f\2\u0097\u0098\5!\21\2\u0098\u0099\5+\26\2\u0099\u009a") - buf.write(u"\5\31\r\2\u009a\u009b\5\33\16\2\u009b\u009c\5)\25\2\u009c") - buf.write(u">\3\2\2\2\u009d\u009e\5%\23\2\u009e\u009f\5\'\24\2\u009f") - buf.write(u"@\3\2\2\2\u00a0\u00aa\7>\2\2\u00a1\u00a2\7>\2\2\u00a2") - buf.write(u"\u00aa\7?\2\2\u00a3\u00aa\7?\2\2\u00a4\u00a5\7@\2\2\u00a5") - buf.write(u"\u00aa\7?\2\2\u00a6\u00aa\7@\2\2\u00a7\u00a8\7#\2\2\u00a8") - buf.write(u"\u00aa\7?\2\2\u00a9\u00a0\3\2\2\2\u00a9\u00a1\3\2\2\2") - buf.write(u"\u00a9\u00a3\3\2\2\2\u00a9\u00a4\3\2\2\2\u00a9\u00a6") - buf.write(u"\3\2\2\2\u00a9\u00a7\3\2\2\2\u00aaB\3\2\2\2\u00ab\u00ad") - buf.write(u"\5\61\31\2\u00ac\u00ab\3\2\2\2\u00ad\u00ae\3\2\2\2\u00ae") - buf.write(u"\u00ac\3\2\2\2\u00ae\u00af\3\2\2\2\u00af\u00b6\3\2\2") - buf.write(u"\2\u00b0\u00b2\t\23\2\2\u00b1\u00b3\5\61\31\2\u00b2\u00b1") - buf.write(u"\3\2\2\2\u00b3\u00b4\3\2\2\2\u00b4\u00b2\3\2\2\2\u00b4") - buf.write(u"\u00b5\3\2\2\2\u00b5\u00b7\3\2\2\2\u00b6\u00b0\3\2\2") - buf.write(u"\2\u00b6\u00b7\3\2\2\2\u00b7D\3\2\2\2\u00b8\u00b9\t\24") - buf.write(u"\2\2\u00b9F\3\2\2\2\u00ba\u00bc\t\25\2\2\u00bb\u00ba") - buf.write(u"\3\2\2\2\u00bc\u00bd\3\2\2\2\u00bd\u00bb\3\2\2\2\u00bd") - buf.write(u"\u00be\3\2\2\2\u00beH\3\2\2\2\u00bf\u00c1\7\17\2\2\u00c0") - buf.write(u"\u00bf\3\2\2\2\u00c0\u00c1\3\2\2\2\u00c1\u00c2\3\2\2") - buf.write(u"\2\u00c2\u00c5\7\f\2\2\u00c3\u00c5\7\17\2\2\u00c4\u00c0") - buf.write(u"\3\2\2\2\u00c4\u00c3\3\2\2\2\u00c5\u00c6\3\2\2\2\u00c6") - buf.write(u"\u00c4\3\2\2\2\u00c6\u00c7\3\2\2\2\u00c7J\3\2\2\2\u00c8") - buf.write(u"\u00cd\5\63\32\2\u00c9\u00cd\5\65\33\2\u00ca\u00cd\5") - buf.write(u"\61\31\2\u00cb\u00cd\7a\2\2\u00cc\u00c8\3\2\2\2\u00cc") - buf.write(u"\u00c9\3\2\2\2\u00cc\u00ca\3\2\2\2\u00cc\u00cb\3\2\2") - buf.write(u"\2\u00cd\u00ce\3\2\2\2\u00ce\u00cc\3\2\2\2\u00ce\u00cf") - buf.write(u"\3\2\2\2\u00cfL\3\2\2\2\r\2\u00a9\u00ae\u00b4\u00b6\u00bd") - buf.write(u"\u00c0\u00c4\u00c6\u00cc\u00ce\2") + buf.write(u"#\4$\t$\4%\t%\4&\t&\4\'\t\'\3\2\3\2\3\3\3\3\3\4\3\4\3") + buf.write(u"\5\3\5\3\6\3\6\3\7\3\7\3\b\3\b\3\t\3\t\3\n\3\n\3\13\3") + buf.write(u"\13\3\f\3\f\3\r\3\r\3\16\3\16\3\17\3\17\3\20\3\20\3\21") + buf.write(u"\3\21\3\22\3\22\3\23\3\23\3\24\3\24\3\25\3\25\3\26\3") + buf.write(u"\26\3\27\3\27\3\30\3\30\3\31\3\31\3\32\3\32\3\33\3\33") + buf.write(u"\3\34\3\34\3\35\3\35\3\35\3\35\3\35\3\35\3\36\3\36\3") + buf.write(u"\36\3\36\3\37\3\37\3\37\3\37\3\37\3\37\3\37\3\37\3\37") + buf.write(u"\3 \3 \3 \3 \3 \3 \3 \3 \3 \3!\3!\3!\3\"\3\"\3\"\3\"") + buf.write(u"\3\"\3\"\3\"\3\"\3\"\5\"\u00ae\n\"\3#\6#\u00b1\n#\r#") + buf.write(u"\16#\u00b2\3#\3#\6#\u00b7\n#\r#\16#\u00b8\5#\u00bb\n") + buf.write(u"#\3$\3$\3%\6%\u00c0\n%\r%\16%\u00c1\3&\5&\u00c5\n&\3") + buf.write(u"&\3&\6&\u00c9\n&\r&\16&\u00ca\3\'\3\'\3\'\3\'\6\'\u00d1") + buf.write(u"\n\'\r\'\16\'\u00d2\2\2(\3\3\5\4\7\5\t\6\13\7\r\b\17") + buf.write(u"\t\21\n\23\13\25\f\27\2\31\2\33\2\35\2\37\2!\2#\2%\2") + buf.write(u"\'\2)\2+\2-\2/\2\61\2\63\2\65\2\67\29\r;\16=\17?\20A") + buf.write(u"\21C\22E\23G\24I\25K\26M\27\3\2\26\4\2CCcc\4\2EEee\4") + buf.write(u"\2FFff\4\2GGgg\4\2JJjj\4\2KKkk\4\2NNnn\4\2PPpp\4\2QQ") + buf.write(u"qq\4\2TTtt\4\2UUuu\4\2WWww\4\2YYyy\4\2ZZzz\3\2\62;\3") + buf.write(u"\2c|\3\2C\\\4\2..\60\60\4\2$$))\4\2\13\13\"\"\2\u00d2") + buf.write(u"\2\3\3\2\2\2\2\5\3\2\2\2\2\7\3\2\2\2\2\t\3\2\2\2\2\13") + buf.write(u"\3\2\2\2\2\r\3\2\2\2\2\17\3\2\2\2\2\21\3\2\2\2\2\23\3") + buf.write(u"\2\2\2\2\25\3\2\2\2\29\3\2\2\2\2;\3\2\2\2\2=\3\2\2\2") + buf.write(u"\2?\3\2\2\2\2A\3\2\2\2\2C\3\2\2\2\2E\3\2\2\2\2G\3\2\2") + buf.write(u"\2\2I\3\2\2\2\2K\3\2\2\2\2M\3\2\2\2\3O\3\2\2\2\5Q\3\2") + buf.write(u"\2\2\7S\3\2\2\2\tU\3\2\2\2\13W\3\2\2\2\rY\3\2\2\2\17") + buf.write(u"[\3\2\2\2\21]\3\2\2\2\23_\3\2\2\2\25a\3\2\2\2\27c\3\2") + buf.write(u"\2\2\31e\3\2\2\2\33g\3\2\2\2\35i\3\2\2\2\37k\3\2\2\2") + buf.write(u"!m\3\2\2\2#o\3\2\2\2%q\3\2\2\2\'s\3\2\2\2)u\3\2\2\2+") + buf.write(u"w\3\2\2\2-y\3\2\2\2/{\3\2\2\2\61}\3\2\2\2\63\177\3\2") + buf.write(u"\2\2\65\u0081\3\2\2\2\67\u0083\3\2\2\29\u0085\3\2\2\2") + buf.write(u";\u008b\3\2\2\2=\u008f\3\2\2\2?\u0098\3\2\2\2A\u00a1") + buf.write(u"\3\2\2\2C\u00ad\3\2\2\2E\u00b0\3\2\2\2G\u00bc\3\2\2\2") + buf.write(u"I\u00bf\3\2\2\2K\u00c8\3\2\2\2M\u00d0\3\2\2\2OP\7\60") + buf.write(u"\2\2P\4\3\2\2\2QR\7\61\2\2R\6\3\2\2\2ST\7a\2\2T\b\3\2") + buf.write(u"\2\2UV\7^\2\2V\n\3\2\2\2WX\7<\2\2X\f\3\2\2\2YZ\7\'\2") + buf.write(u"\2Z\16\3\2\2\2[\\\7.\2\2\\\20\3\2\2\2]^\7/\2\2^\22\3") + buf.write(u"\2\2\2_`\7,\2\2`\24\3\2\2\2ab\7\u0080\2\2b\26\3\2\2\2") + buf.write(u"cd\t\2\2\2d\30\3\2\2\2ef\t\3\2\2f\32\3\2\2\2gh\t\4\2") + buf.write(u"\2h\34\3\2\2\2ij\t\5\2\2j\36\3\2\2\2kl\t\6\2\2l \3\2") + buf.write(u"\2\2mn\t\7\2\2n\"\3\2\2\2op\t\b\2\2p$\3\2\2\2qr\t\t\2") + buf.write(u"\2r&\3\2\2\2st\t\n\2\2t(\3\2\2\2uv\t\13\2\2v*\3\2\2\2") + buf.write(u"wx\t\f\2\2x,\3\2\2\2yz\t\r\2\2z.\3\2\2\2{|\t\16\2\2|") + buf.write(u"\60\3\2\2\2}~\t\17\2\2~\62\3\2\2\2\177\u0080\t\20\2\2") + buf.write(u"\u0080\64\3\2\2\2\u0081\u0082\t\21\2\2\u0082\66\3\2\2") + buf.write(u"\2\u0083\u0084\t\22\2\2\u00848\3\2\2\2\u0085\u0086\5") + buf.write(u"/\30\2\u0086\u0087\5\37\20\2\u0087\u0088\5\35\17\2\u0088") + buf.write(u"\u0089\5)\25\2\u0089\u008a\5\35\17\2\u008a:\3\2\2\2\u008b") + buf.write(u"\u008c\5\27\f\2\u008c\u008d\5%\23\2\u008d\u008e\5\33") + buf.write(u"\16\2\u008e<\3\2\2\2\u008f\u0090\5!\21\2\u0090\u0091") + buf.write(u"\5%\23\2\u0091\u0092\5\31\r\2\u0092\u0093\5#\22\2\u0093") + buf.write(u"\u0094\5-\27\2\u0094\u0095\5\33\16\2\u0095\u0096\5\35") + buf.write(u"\17\2\u0096\u0097\5+\26\2\u0097>\3\2\2\2\u0098\u0099") + buf.write(u"\5\35\17\2\u0099\u009a\5\61\31\2\u009a\u009b\5\31\r\2") + buf.write(u"\u009b\u009c\5#\22\2\u009c\u009d\5-\27\2\u009d\u009e") + buf.write(u"\5\33\16\2\u009e\u009f\5\35\17\2\u009f\u00a0\5+\26\2") + buf.write(u"\u00a0@\3\2\2\2\u00a1\u00a2\5\'\24\2\u00a2\u00a3\5)\25") + buf.write(u"\2\u00a3B\3\2\2\2\u00a4\u00ae\7>\2\2\u00a5\u00a6\7>\2") + buf.write(u"\2\u00a6\u00ae\7?\2\2\u00a7\u00ae\7?\2\2\u00a8\u00a9") + buf.write(u"\7@\2\2\u00a9\u00ae\7?\2\2\u00aa\u00ae\7@\2\2\u00ab\u00ac") + buf.write(u"\7#\2\2\u00ac\u00ae\7?\2\2\u00ad\u00a4\3\2\2\2\u00ad") + buf.write(u"\u00a5\3\2\2\2\u00ad\u00a7\3\2\2\2\u00ad\u00a8\3\2\2") + buf.write(u"\2\u00ad\u00aa\3\2\2\2\u00ad\u00ab\3\2\2\2\u00aeD\3\2") + buf.write(u"\2\2\u00af\u00b1\5\63\32\2\u00b0\u00af\3\2\2\2\u00b1") + buf.write(u"\u00b2\3\2\2\2\u00b2\u00b0\3\2\2\2\u00b2\u00b3\3\2\2") + buf.write(u"\2\u00b3\u00ba\3\2\2\2\u00b4\u00b6\t\23\2\2\u00b5\u00b7") + buf.write(u"\5\63\32\2\u00b6\u00b5\3\2\2\2\u00b7\u00b8\3\2\2\2\u00b8") + buf.write(u"\u00b6\3\2\2\2\u00b8\u00b9\3\2\2\2\u00b9\u00bb\3\2\2") + buf.write(u"\2\u00ba\u00b4\3\2\2\2\u00ba\u00bb\3\2\2\2\u00bbF\3\2") + buf.write(u"\2\2\u00bc\u00bd\t\24\2\2\u00bdH\3\2\2\2\u00be\u00c0") + buf.write(u"\t\25\2\2\u00bf\u00be\3\2\2\2\u00c0\u00c1\3\2\2\2\u00c1") + buf.write(u"\u00bf\3\2\2\2\u00c1\u00c2\3\2\2\2\u00c2J\3\2\2\2\u00c3") + buf.write(u"\u00c5\7\17\2\2\u00c4\u00c3\3\2\2\2\u00c4\u00c5\3\2\2") + buf.write(u"\2\u00c5\u00c6\3\2\2\2\u00c6\u00c9\7\f\2\2\u00c7\u00c9") + buf.write(u"\7\17\2\2\u00c8\u00c4\3\2\2\2\u00c8\u00c7\3\2\2\2\u00c9") + buf.write(u"\u00ca\3\2\2\2\u00ca\u00c8\3\2\2\2\u00ca\u00cb\3\2\2") + buf.write(u"\2\u00cbL\3\2\2\2\u00cc\u00d1\5\65\33\2\u00cd\u00d1\5") + buf.write(u"\67\34\2\u00ce\u00d1\5\63\32\2\u00cf\u00d1\7a\2\2\u00d0") + buf.write(u"\u00cc\3\2\2\2\u00d0\u00cd\3\2\2\2\u00d0\u00ce\3\2\2") + buf.write(u"\2\u00d0\u00cf\3\2\2\2\u00d1\u00d2\3\2\2\2\u00d2\u00d0") + buf.write(u"\3\2\2\2\u00d2\u00d3\3\2\2\2\u00d3N\3\2\2\2\r\2\u00ad") + buf.write(u"\u00b2\u00b8\u00ba\u00c1\u00c4\u00c8\u00ca\u00d0\u00d2") + buf.write(u"\2") return buf.getvalue() @@ -120,17 +122,18 @@ class MetricAlertConditionLexer(Lexer): T__6 = 7 T__7 = 8 T__8 = 9 - WHERE = 10 - AND = 11 - INCLUDES = 12 - EXCLUDES = 13 - OR = 14 - OPERATOR = 15 - NUMBER = 16 - QUOTE = 17 - WHITESPACE = 18 - NEWLINE = 19 - WORD = 20 + T__9 = 10 + WHERE = 11 + AND = 12 + INCLUDES = 13 + EXCLUDES = 14 + OR = 15 + OPERATOR = 16 + NUMBER = 17 + QUOTE = 18 + WHITESPACE = 19 + NEWLINE = 20 + WORD = 21 channelNames = [ u"DEFAULT_TOKEN_CHANNEL", u"HIDDEN" ] @@ -138,18 +141,18 @@ class MetricAlertConditionLexer(Lexer): literalNames = [ u"", u"'.'", u"'/'", u"'_'", u"'\\'", u"':'", u"'%'", u"','", u"'-'", - u"'*'" ] + u"'*'", u"'~'" ] symbolicNames = [ u"", u"WHERE", u"AND", u"INCLUDES", u"EXCLUDES", u"OR", u"OPERATOR", u"NUMBER", u"QUOTE", u"WHITESPACE", u"NEWLINE", u"WORD" ] ruleNames = [ u"T__0", u"T__1", u"T__2", u"T__3", u"T__4", u"T__5", - u"T__6", u"T__7", u"T__8", u"A", u"C", u"D", u"E", u"H", - u"I", u"L", u"N", u"O", u"R", u"S", u"U", u"W", u"X", - u"DIGIT", u"LOWERCASE", u"UPPERCASE", u"WHERE", u"AND", - u"INCLUDES", u"EXCLUDES", u"OR", u"OPERATOR", u"NUMBER", - u"QUOTE", u"WHITESPACE", u"NEWLINE", u"WORD" ] + u"T__6", u"T__7", u"T__8", u"T__9", u"A", u"C", u"D", + u"E", u"H", u"I", u"L", u"N", u"O", u"R", u"S", u"U", + u"W", u"X", u"DIGIT", u"LOWERCASE", u"UPPERCASE", u"WHERE", + u"AND", u"INCLUDES", u"EXCLUDES", u"OR", u"OPERATOR", + u"NUMBER", u"QUOTE", u"WHITESPACE", u"NEWLINE", u"WORD" ] grammarFileName = u"MetricAlertCondition.g4" diff --git a/src/azure-cli/azure/cli/command_modules/monitor/grammar/MetricAlertConditionListener.py b/src/azure-cli/azure/cli/command_modules/monitor/grammar/MetricAlertConditionListener.py index c172c5c2887..89e40c76ad7 100644 --- a/src/azure-cli/azure/cli/command_modules/monitor/grammar/MetricAlertConditionListener.py +++ b/src/azure-cli/azure/cli/command_modules/monitor/grammar/MetricAlertConditionListener.py @@ -4,8 +4,6 @@ # -------------------------------------------------------------------------------------------- # pylint: disable=all - -# Generated from MetricAlertCondition.g4 by ANTLR 4.7.2 from antlr4 import * # This class defines a complete listener for a parse tree produced by MetricAlertConditionParser. diff --git a/src/azure-cli/azure/cli/command_modules/monitor/grammar/MetricAlertConditionParser.py b/src/azure-cli/azure/cli/command_modules/monitor/grammar/MetricAlertConditionParser.py index f71ba187051..45b9e320034 100644 --- a/src/azure-cli/azure/cli/command_modules/monitor/grammar/MetricAlertConditionParser.py +++ b/src/azure-cli/azure/cli/command_modules/monitor/grammar/MetricAlertConditionParser.py @@ -2,11 +2,9 @@ # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. # -------------------------------------------------------------------------------------------- - +# encoding: utf-8 # pylint: disable=all - # Generated from MetricAlertCondition.g4 by ANTLR 4.7.2 -# encoding: utf-8 from __future__ import print_function from antlr4 import * from io import StringIO @@ -16,7 +14,7 @@ def serializedATN(): with StringIO() as buf: buf.write(u"\3\u608b\ua72a\u8133\ub9ed\u417c\u3be7\u7786\u5964\3") - buf.write(u"\26~\4\2\t\2\4\3\t\3\4\4\t\4\4\5\t\5\4\6\t\6\4\7\t\7") + buf.write(u"\27~\4\2\t\2\4\3\t\3\4\4\t\4\4\5\t\5\4\6\t\6\4\7\t\7") buf.write(u"\4\b\t\b\4\t\t\t\4\n\t\n\4\13\t\13\4\f\t\f\4\r\t\r\4") buf.write(u"\16\t\16\4\17\t\17\4\20\t\20\3\2\3\2\3\2\3\2\7\2%\n\2") buf.write(u"\f\2\16\2(\13\2\3\2\3\2\3\2\3\2\3\2\3\2\5\2\60\n\2\3") @@ -27,30 +25,30 @@ def serializedATN(): buf.write(u"\3\n\3\n\3\13\3\13\3\13\3\f\3\f\3\f\3\r\3\r\3\r\3\16") buf.write(u"\3\16\3\16\3\17\3\17\3\17\3\17\7\17t\n\17\f\17\16\17") buf.write(u"w\13\17\3\20\6\20z\n\20\r\20\16\20{\3\20\2\2\21\2\4\6") - buf.write(u"\b\n\f\16\20\22\24\26\30\32\34\36\2\b\4\2\3\4\26\26\5") - buf.write(u"\2\3\b\24\24\26\26\4\2\t\t\r\r\3\2\16\17\4\2\t\t\20\20") - buf.write(u"\b\2\3\3\7\7\n\13\22\22\24\24\26\26\2w\2 \3\2\2\2\4@") - buf.write(u"\3\2\2\2\6D\3\2\2\2\bI\3\2\2\2\nM\3\2\2\2\fP\3\2\2\2") + buf.write(u"\b\n\f\16\20\22\24\26\30\32\34\36\2\b\4\2\3\4\27\27\5") + buf.write(u"\2\3\b\25\25\27\27\4\2\t\t\16\16\3\2\17\20\4\2\t\t\21") + buf.write(u"\21\b\2\3\3\7\7\n\f\23\23\25\25\27\27\2w\2 \3\2\2\2\4") + buf.write(u"@\3\2\2\2\6D\3\2\2\2\bI\3\2\2\2\nM\3\2\2\2\fP\3\2\2\2") buf.write(u"\16R\3\2\2\2\20U\3\2\2\2\22_\3\2\2\2\24c\3\2\2\2\26f") buf.write(u"\3\2\2\2\30i\3\2\2\2\32l\3\2\2\2\34o\3\2\2\2\36y\3\2") buf.write(u"\2\2 &\5\4\3\2!\"\5\6\4\2\"#\7\3\2\2#%\3\2\2\2$!\3\2") buf.write(u"\2\2%(\3\2\2\2&$\3\2\2\2&\'\3\2\2\2\'/\3\2\2\2(&\3\2") - buf.write(u"\2\2)*\7\23\2\2*+\5\b\5\2+,\7\23\2\2,-\7\24\2\2-\60\3") + buf.write(u"\2\2)*\7\24\2\2*+\5\b\5\2+,\7\24\2\2,-\7\25\2\2-\60\3") buf.write(u"\2\2\2.\60\5\b\5\2/)\3\2\2\2/.\3\2\2\2\60\61\3\2\2\2") - buf.write(u"\61\62\5\n\6\2\62\67\5\f\7\2\63\64\7\24\2\2\64\66\5\20") + buf.write(u"\61\62\5\n\6\2\62\67\5\f\7\2\63\64\7\25\2\2\64\66\5\20") buf.write(u"\t\2\65\63\3\2\2\2\669\3\2\2\2\67\65\3\2\2\2\678\3\2") - buf.write(u"\2\28=\3\2\2\29\67\3\2\2\2:<\7\25\2\2;:\3\2\2\2\3\2\2\2>\3\3\2\2\2?=\3\2\2\2@A\7\26") - buf.write(u"\2\2AB\7\24\2\2B\5\3\2\2\2CE\t\2\2\2DC\3\2\2\2EF\3\2") + buf.write(u"\2\28=\3\2\2\29\67\3\2\2\2:<\7\26\2\2;:\3\2\2\2\3\2\2\2>\3\3\2\2\2?=\3\2\2\2@A\7\27") + buf.write(u"\2\2AB\7\25\2\2B\5\3\2\2\2CE\t\2\2\2DC\3\2\2\2EF\3\2") buf.write(u"\2\2FD\3\2\2\2FG\3\2\2\2G\7\3\2\2\2HJ\t\3\2\2IH\3\2\2") - buf.write(u"\2JK\3\2\2\2KI\3\2\2\2KL\3\2\2\2L\t\3\2\2\2MN\7\21\2") - buf.write(u"\2NO\7\24\2\2O\13\3\2\2\2PQ\7\22\2\2Q\r\3\2\2\2RS\7\f") - buf.write(u"\2\2ST\7\24\2\2T\17\3\2\2\2UV\5\16\b\2V\\\5\22\n\2WX") + buf.write(u"\2JK\3\2\2\2KI\3\2\2\2KL\3\2\2\2L\t\3\2\2\2MN\7\22\2") + buf.write(u"\2NO\7\25\2\2O\13\3\2\2\2PQ\7\23\2\2Q\r\3\2\2\2RS\7\r") + buf.write(u"\2\2ST\7\25\2\2T\17\3\2\2\2UV\5\16\b\2V\\\5\22\n\2WX") buf.write(u"\5\24\13\2XY\5\22\n\2Y[\3\2\2\2ZW\3\2\2\2[^\3\2\2\2\\") buf.write(u"Z\3\2\2\2\\]\3\2\2\2]\21\3\2\2\2^\\\3\2\2\2_`\5\32\16") - buf.write(u"\2`a\5\26\f\2ab\5\34\17\2b\23\3\2\2\2cd\t\4\2\2de\7\24") - buf.write(u"\2\2e\25\3\2\2\2fg\t\5\2\2gh\7\24\2\2h\27\3\2\2\2ij\t") - buf.write(u"\6\2\2jk\7\24\2\2k\31\3\2\2\2lm\7\26\2\2mn\7\24\2\2n") + buf.write(u"\2`a\5\26\f\2ab\5\34\17\2b\23\3\2\2\2cd\t\4\2\2de\7\25") + buf.write(u"\2\2e\25\3\2\2\2fg\t\5\2\2gh\7\25\2\2h\27\3\2\2\2ij\t") + buf.write(u"\6\2\2jk\7\25\2\2k\31\3\2\2\2lm\7\27\2\2mn\7\25\2\2n") buf.write(u"\33\3\2\2\2ou\5\36\20\2pq\5\30\r\2qr\5\36\20\2rt\3\2") buf.write(u"\2\2sp\3\2\2\2tw\3\2\2\2us\3\2\2\2uv\3\2\2\2v\35\3\2") buf.write(u"\2\2wu\3\2\2\2xz\t\7\2\2yx\3\2\2\2z{\3\2\2\2{y\3\2\2") @@ -69,13 +67,13 @@ class MetricAlertConditionParser ( Parser ): sharedContextCache = PredictionContextCache() literalNames = [ u"", u"'.'", u"'/'", u"'_'", u"'\\'", u"':'", - u"'%'", u"','", u"'-'", u"'*'" ] + u"'%'", u"','", u"'-'", u"'*'", u"'~'" ] symbolicNames = [ u"", u"", u"", u"", u"", u"", u"", u"", - u"", u"", u"WHERE", u"AND", u"INCLUDES", - u"EXCLUDES", u"OR", u"OPERATOR", u"NUMBER", u"QUOTE", - u"WHITESPACE", u"NEWLINE", u"WORD" ] + u"", u"", u"", u"WHERE", + u"AND", u"INCLUDES", u"EXCLUDES", u"OR", u"OPERATOR", + u"NUMBER", u"QUOTE", u"WHITESPACE", u"NEWLINE", u"WORD" ] RULE_expression = 0 RULE_aggregation = 1 @@ -108,17 +106,18 @@ class MetricAlertConditionParser ( Parser ): T__6=7 T__7=8 T__8=9 - WHERE=10 - AND=11 - INCLUDES=12 - EXCLUDES=13 - OR=14 - OPERATOR=15 - NUMBER=16 - QUOTE=17 - WHITESPACE=18 - NEWLINE=19 - WORD=20 + T__9=10 + WHERE=11 + AND=12 + INCLUDES=13 + EXCLUDES=14 + OR=15 + OPERATOR=16 + NUMBER=17 + QUOTE=18 + WHITESPACE=19 + NEWLINE=20 + WORD=21 def __init__(self, input, output=sys.stdout): super(MetricAlertConditionParser, self).__init__(input, output=output) @@ -1015,7 +1014,7 @@ def dim_value(self): if _alt == 1: self.state = 118 _la = self._input.LA(1) - if not((((_la) & ~0x3f) == 0 and ((1 << _la) & ((1 << MetricAlertConditionParser.T__0) | (1 << MetricAlertConditionParser.T__4) | (1 << MetricAlertConditionParser.T__7) | (1 << MetricAlertConditionParser.T__8) | (1 << MetricAlertConditionParser.NUMBER) | (1 << MetricAlertConditionParser.WHITESPACE) | (1 << MetricAlertConditionParser.WORD))) != 0)): + if not((((_la) & ~0x3f) == 0 and ((1 << _la) & ((1 << MetricAlertConditionParser.T__0) | (1 << MetricAlertConditionParser.T__4) | (1 << MetricAlertConditionParser.T__7) | (1 << MetricAlertConditionParser.T__8) | (1 << MetricAlertConditionParser.T__9) | (1 << MetricAlertConditionParser.NUMBER) | (1 << MetricAlertConditionParser.WHITESPACE) | (1 << MetricAlertConditionParser.WORD))) != 0)): self._errHandler.recoverInline(self) else: self._errHandler.reportMatch(self) diff --git a/src/azure-cli/azure/cli/command_modules/monitor/tests/latest/recordings/test_metric_alert_special_char_scenario.yaml b/src/azure-cli/azure/cli/command_modules/monitor/tests/latest/recordings/test_metric_alert_special_char_scenario.yaml new file mode 100644 index 00000000000..243d0c4cd90 --- /dev/null +++ b/src/azure-cli/azure/cli/command_modules/monitor/tests/latest/recordings/test_metric_alert_special_char_scenario.yaml @@ -0,0 +1,1927 @@ +interactions: +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + accept-language: + - en-US + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001?api-version=2019-07-01 + response: + body: + string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001","name":"cli_test_metric_alert_special_char000001","type":"Microsoft.Resources/resourceGroups","location":"westus","tags":{"product":"azurecli","cause":"automation","date":"2020-03-04T05:38:35Z"},"properties":{"provisioningState":"Succeeded"}}' + headers: + cache-control: + - no-cache + content-length: + - '428' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:38:43 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + accept-language: + - en-US + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resources?$filter=resourceGroup%20eq%20%27cli_test_metric_alert_special_char000001%27%20and%20name%20eq%20%27None%27%20and%20resourceType%20eq%20%27Microsoft.Network%2FvirtualNetworks%27&api-version=2019-07-01 + response: + body: + string: '{"value":[]}' + headers: + cache-control: + - no-cache + content-length: + - '12' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:38:44 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK +- request: + body: 'b''{"properties": {"template": {"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", + "contentVersion": "1.0.0.0", "parameters": {}, "variables": {"appGwID": "[resourceId(\''Microsoft.Network/applicationGateways\'', + \''ag1\'')]"}, "resources": [{"name": "ag1Vnet", "type": "Microsoft.Network/virtualNetworks", + "location": "westus", "apiVersion": "2015-06-15", "dependsOn": [], "tags": {}, + "properties": {"addressSpace": {"addressPrefixes": ["10.0.0.0/16"]}, "subnets": + [{"name": "default", "properties": {"addressPrefix": "10.0.0.0/24"}}]}}, {"type": + "Microsoft.Network/applicationGateways", "name": "ag1", "location": "westus", + "tags": {}, "apiVersion": "2019-11-01", "dependsOn": ["Microsoft.Network/virtualNetworks/ag1Vnet"], + "properties": {"backendAddressPools": [{"name": "appGatewayBackendPool"}], "backendHttpSettingsCollection": + [{"name": "appGatewayBackendHttpSettings", "properties": {"Port": 80, "Protocol": + "Http", "CookieBasedAffinity": "disabled", "connectionDraining": {"enabled": + false, "drainTimeoutInSec": 1}}}], "frontendIPConfigurations": [{"name": "appGatewayFrontendIP", + "properties": {"privateIPAllocationMethod": "Dynamic", "privateIPAddress": "", + "subnet": {"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/virtualNetworks/ag1Vnet/subnets/default"}}}], + "frontendPorts": [{"name": "appGatewayFrontendPort", "properties": {"Port": + 80}}], "gatewayIPConfigurations": [{"name": "appGatewayFrontendIP", "properties": + {"subnet": {"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/virtualNetworks/ag1Vnet/subnets/default"}}}], + "httpListeners": [{"name": "appGatewayHttpListener", "properties": {"FrontendIpConfiguration": + {"Id": "[concat(variables(\''appGwID\''), \''/frontendIPConfigurations/appGatewayFrontendIP\'')]"}, + "FrontendPort": {"Id": "[concat(variables(\''appGwID\''), \''/frontendPorts/appGatewayFrontendPort\'')]"}, + "Protocol": "http", "SslCertificate": null}}], "sku": {"name": "Standard_Medium", + "tier": "Standard", "capacity": 2}, "requestRoutingRules": [{"Name": "rule1", + "properties": {"RuleType": "Basic", "httpListener": {"id": "[concat(variables(\''appGwID\''), + \''/httpListeners/appGatewayHttpListener\'')]"}, "backendAddressPool": {"id": + "[concat(variables(\''appGwID\''), \''/backendAddressPools/appGatewayBackendPool\'')]"}, + "backendHttpSettings": {"id": "[concat(variables(\''appGwID\''), \''/backendHttpSettingsCollection/appGatewayBackendHttpSettings\'')]"}}}]}, + "zones": null}], "outputs": {"applicationGateway": {"type": "object", "value": + "[reference(\''ag1\'')]"}}}, "parameters": {}, "mode": "Incremental"}}''' + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + Content-Length: + - '2799' + Content-Type: + - application/json; charset=utf-8 + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + accept-language: + - en-US + method: PUT + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/mock-deployment?api-version=2019-07-01 + response: + body: + string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/ag_deploy_INHLaNb3aYeSX8F04sddXfsG6rDYWIPC","name":"ag_deploy_INHLaNb3aYeSX8F04sddXfsG6rDYWIPC","type":"Microsoft.Resources/deployments","properties":{"templateHash":"3415582447050283661","parameters":{},"mode":"Incremental","provisioningState":"Accepted","timestamp":"2020-03-04T05:38:51.6956688Z","duration":"PT3.827822S","correlationId":"561e0313-fc8f-42c2-8d95-f628702991d8","providers":[{"namespace":"Microsoft.Network","resourceTypes":[{"resourceType":"virtualNetworks","locations":["westus"]},{"resourceType":"applicationGateways","locations":["westus"]}]}],"dependencies":[{"dependsOn":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/virtualNetworks/ag1Vnet","resourceType":"Microsoft.Network/virtualNetworks","resourceName":"ag1Vnet"}],"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1","resourceType":"Microsoft.Network/applicationGateways","resourceName":"ag1"}]}}' + headers: + azure-asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/ag_deploy_INHLaNb3aYeSX8F04sddXfsG6rDYWIPC/operationStatuses/08586183065576097661?api-version=2019-07-01 + cache-control: + - no-cache + content-length: + - '1349' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:38:52 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + x-content-type-options: + - nosniff + x-ms-ratelimit-remaining-subscription-writes: + - '1199' + status: + code: 201 + message: Created +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08586183065576097661?api-version=2019-07-01 + response: + body: + string: '{"status":"Running"}' + headers: + cache-control: + - no-cache + content-length: + - '20' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:39:23 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08586183065576097661?api-version=2019-07-01 + response: + body: + string: '{"status":"Running"}' + headers: + cache-control: + - no-cache + content-length: + - '20' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:39:53 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08586183065576097661?api-version=2019-07-01 + response: + body: + string: '{"status":"Running"}' + headers: + cache-control: + - no-cache + content-length: + - '20' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:40:24 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08586183065576097661?api-version=2019-07-01 + response: + body: + string: '{"status":"Running"}' + headers: + cache-control: + - no-cache + content-length: + - '20' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:40:55 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08586183065576097661?api-version=2019-07-01 + response: + body: + string: '{"status":"Running"}' + headers: + cache-control: + - no-cache + content-length: + - '20' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:41:25 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08586183065576097661?api-version=2019-07-01 + response: + body: + string: '{"status":"Running"}' + headers: + cache-control: + - no-cache + content-length: + - '20' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:41:56 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08586183065576097661?api-version=2019-07-01 + response: + body: + string: '{"status":"Running"}' + headers: + cache-control: + - no-cache + content-length: + - '20' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:42:26 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08586183065576097661?api-version=2019-07-01 + response: + body: + string: '{"status":"Running"}' + headers: + cache-control: + - no-cache + content-length: + - '20' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:42:56 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08586183065576097661?api-version=2019-07-01 + response: + body: + string: '{"status":"Running"}' + headers: + cache-control: + - no-cache + content-length: + - '20' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:43:27 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08586183065576097661?api-version=2019-07-01 + response: + body: + string: '{"status":"Running"}' + headers: + cache-control: + - no-cache + content-length: + - '20' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:43:57 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08586183065576097661?api-version=2019-07-01 + response: + body: + string: '{"status":"Running"}' + headers: + cache-control: + - no-cache + content-length: + - '20' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:44:28 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08586183065576097661?api-version=2019-07-01 + response: + body: + string: '{"status":"Running"}' + headers: + cache-control: + - no-cache + content-length: + - '20' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:44:58 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08586183065576097661?api-version=2019-07-01 + response: + body: + string: '{"status":"Running"}' + headers: + cache-control: + - no-cache + content-length: + - '20' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:45:28 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08586183065576097661?api-version=2019-07-01 + response: + body: + string: '{"status":"Running"}' + headers: + cache-control: + - no-cache + content-length: + - '20' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:45:59 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08586183065576097661?api-version=2019-07-01 + response: + body: + string: '{"status":"Running"}' + headers: + cache-control: + - no-cache + content-length: + - '20' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:46:29 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08586183065576097661?api-version=2019-07-01 + response: + body: + string: '{"status":"Running"}' + headers: + cache-control: + - no-cache + content-length: + - '20' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:46:59 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08586183065576097661?api-version=2019-07-01 + response: + body: + string: '{"status":"Running"}' + headers: + cache-control: + - no-cache + content-length: + - '20' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:47:30 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08586183065576097661?api-version=2019-07-01 + response: + body: + string: '{"status":"Running"}' + headers: + cache-control: + - no-cache + content-length: + - '20' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:48:00 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08586183065576097661?api-version=2019-07-01 + response: + body: + string: '{"status":"Running"}' + headers: + cache-control: + - no-cache + content-length: + - '20' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:48:32 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08586183065576097661?api-version=2019-07-01 + response: + body: + string: '{"status":"Running"}' + headers: + cache-control: + - no-cache + content-length: + - '20' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:49:02 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08586183065576097661?api-version=2019-07-01 + response: + body: + string: '{"status":"Running"}' + headers: + cache-control: + - no-cache + content-length: + - '20' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:49:32 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08586183065576097661?api-version=2019-07-01 + response: + body: + string: '{"status":"Running"}' + headers: + cache-control: + - no-cache + content-length: + - '20' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:50:03 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08586183065576097661?api-version=2019-07-01 + response: + body: + string: '{"status":"Running"}' + headers: + cache-control: + - no-cache + content-length: + - '20' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:50:33 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08586183065576097661?api-version=2019-07-01 + response: + body: + string: '{"status":"Running"}' + headers: + cache-control: + - no-cache + content-length: + - '20' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:51:04 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08586183065576097661?api-version=2019-07-01 + response: + body: + string: '{"status":"Running"}' + headers: + cache-control: + - no-cache + content-length: + - '20' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:51:34 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08586183065576097661?api-version=2019-07-01 + response: + body: + string: '{"status":"Running"}' + headers: + cache-control: + - no-cache + content-length: + - '20' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:52:04 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08586183065576097661?api-version=2019-07-01 + response: + body: + string: '{"status":"Running"}' + headers: + cache-control: + - no-cache + content-length: + - '20' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:52:35 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08586183065576097661?api-version=2019-07-01 + response: + body: + string: '{"status":"Running"}' + headers: + cache-control: + - no-cache + content-length: + - '20' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:53:05 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08586183065576097661?api-version=2019-07-01 + response: + body: + string: '{"status":"Running"}' + headers: + cache-control: + - no-cache + content-length: + - '20' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:53:35 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08586183065576097661?api-version=2019-07-01 + response: + body: + string: '{"status":"Running"}' + headers: + cache-control: + - no-cache + content-length: + - '20' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:54:06 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08586183065576097661?api-version=2019-07-01 + response: + body: + string: '{"status":"Running"}' + headers: + cache-control: + - no-cache + content-length: + - '20' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:54:36 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08586183065576097661?api-version=2019-07-01 + response: + body: + string: '{"status":"Running"}' + headers: + cache-control: + - no-cache + content-length: + - '20' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:55:07 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08586183065576097661?api-version=2019-07-01 + response: + body: + string: '{"status":"Running"}' + headers: + cache-control: + - no-cache + content-length: + - '20' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:55:37 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08586183065576097661?api-version=2019-07-01 + response: + body: + string: '{"status":"Running"}' + headers: + cache-control: + - no-cache + content-length: + - '20' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:56:07 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08586183065576097661?api-version=2019-07-01 + response: + body: + string: '{"status":"Succeeded"}' + headers: + cache-control: + - no-cache + content-length: + - '22' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:56:38 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway create + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-resource/8.0.1 Azure-SDK-For-Python AZURECLI/2.1.0 + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/mock-deployment?api-version=2019-07-01 + response: + body: + string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Resources/deployments/ag_deploy_INHLaNb3aYeSX8F04sddXfsG6rDYWIPC","name":"ag_deploy_INHLaNb3aYeSX8F04sddXfsG6rDYWIPC","type":"Microsoft.Resources/deployments","properties":{"templateHash":"3415582447050283661","parameters":{},"mode":"Incremental","provisioningState":"Succeeded","timestamp":"2020-03-04T05:56:38.1217493Z","duration":"PT17M50.2539025S","correlationId":"561e0313-fc8f-42c2-8d95-f628702991d8","providers":[{"namespace":"Microsoft.Network","resourceTypes":[{"resourceType":"virtualNetworks","locations":["westus"]},{"resourceType":"applicationGateways","locations":["westus"]}]}],"dependencies":[{"dependsOn":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/virtualNetworks/ag1Vnet","resourceType":"Microsoft.Network/virtualNetworks","resourceName":"ag1Vnet"}],"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1","resourceType":"Microsoft.Network/applicationGateways","resourceName":"ag1"}],"outputs":{"applicationGateway":{"type":"Object","value":{"provisioningState":"Succeeded","resourceGuid":"d16790c4-9359-4a64-9b81-6385522025f7","sku":{"name":"Standard_Medium","tier":"Standard","capacity":2},"operationalState":"Running","gatewayIPConfigurations":[{"name":"appGatewayFrontendIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1/gatewayIPConfigurations/appGatewayFrontendIP","etag":"W/\"eeaf4c1f-c456-4f75-9933-2a0ac18144c5\"","properties":{"provisioningState":"Succeeded","subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/virtualNetworks/ag1Vnet/subnets/default"}},"type":"Microsoft.Network/applicationGateways/gatewayIPConfigurations"}],"sslCertificates":[],"authenticationCertificates":[],"frontendIPConfigurations":[{"name":"appGatewayFrontendIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1/frontendIPConfigurations/appGatewayFrontendIP","etag":"W/\"eeaf4c1f-c456-4f75-9933-2a0ac18144c5\"","type":"Microsoft.Network/applicationGateways/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.6","privateIPAllocationMethod":"Dynamic","subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/virtualNetworks/ag1Vnet/subnets/default"},"httpListeners":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1/httpListeners/appGatewayHttpListener"}]}}],"frontendPorts":[{"name":"appGatewayFrontendPort","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1/frontendPorts/appGatewayFrontendPort","etag":"W/\"eeaf4c1f-c456-4f75-9933-2a0ac18144c5\"","properties":{"provisioningState":"Succeeded","port":80,"httpListeners":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1/httpListeners/appGatewayHttpListener"}]},"type":"Microsoft.Network/applicationGateways/frontendPorts"}],"backendAddressPools":[{"name":"appGatewayBackendPool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1/backendAddressPools/appGatewayBackendPool","etag":"W/\"eeaf4c1f-c456-4f75-9933-2a0ac18144c5\"","properties":{"provisioningState":"Succeeded","backendAddresses":[],"requestRoutingRules":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1/requestRoutingRules/rule1"}]},"type":"Microsoft.Network/applicationGateways/backendAddressPools"}],"backendHttpSettingsCollection":[{"name":"appGatewayBackendHttpSettings","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1/backendHttpSettingsCollection/appGatewayBackendHttpSettings","etag":"W/\"eeaf4c1f-c456-4f75-9933-2a0ac18144c5\"","properties":{"provisioningState":"Succeeded","port":80,"protocol":"Http","cookieBasedAffinity":"Disabled","connectionDraining":{"enabled":false,"drainTimeoutInSec":1},"pickHostNameFromBackendAddress":false,"requestTimeout":30,"requestRoutingRules":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1/requestRoutingRules/rule1"}]},"type":"Microsoft.Network/applicationGateways/backendHttpSettingsCollection"}],"httpListeners":[{"name":"appGatewayHttpListener","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1/httpListeners/appGatewayHttpListener","etag":"W/\"eeaf4c1f-c456-4f75-9933-2a0ac18144c5\"","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1/frontendIPConfigurations/appGatewayFrontendIP"},"frontendPort":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1/frontendPorts/appGatewayFrontendPort"},"protocol":"Http","hostNames":[],"requireServerNameIndication":false,"requestRoutingRules":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1/requestRoutingRules/rule1"}]},"type":"Microsoft.Network/applicationGateways/httpListeners"}],"urlPathMaps":[],"requestRoutingRules":[{"name":"rule1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1/requestRoutingRules/rule1","etag":"W/\"eeaf4c1f-c456-4f75-9933-2a0ac18144c5\"","properties":{"provisioningState":"Succeeded","ruleType":"Basic","httpListener":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1/httpListeners/appGatewayHttpListener"},"backendAddressPool":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1/backendAddressPools/appGatewayBackendPool"},"backendHttpSettings":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1/backendHttpSettingsCollection/appGatewayBackendHttpSettings"}},"type":"Microsoft.Network/applicationGateways/requestRoutingRules"}],"probes":[],"rewriteRuleSets":[],"redirectConfigurations":[]}}},"outputResources":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/virtualNetworks/ag1Vnet"}]}}' + headers: + cache-control: + - no-cache + content-length: + - '8876' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:56:39 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - network application-gateway show + Connection: + - keep-alive + ParameterSetName: + - -g -n + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-network/9.0.0 Azure-SDK-For-Python AZURECLI/2.1.0 + accept-language: + - en-US + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1?api-version=2019-11-01 + response: + body: + string: "{\r\n \"name\": \"ag1\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1\",\r\n + \ \"etag\": \"W/\\\"eeaf4c1f-c456-4f75-9933-2a0ac18144c5\\\"\",\r\n \"type\": + \"Microsoft.Network/applicationGateways\",\r\n \"location\": \"westus\",\r\n + \ \"tags\": {},\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n + \ \"resourceGuid\": \"d16790c4-9359-4a64-9b81-6385522025f7\",\r\n \"sku\": + {\r\n \"name\": \"Standard_Medium\",\r\n \"tier\": \"Standard\",\r\n + \ \"capacity\": 2\r\n },\r\n \"operationalState\": \"Running\",\r\n + \ \"gatewayIPConfigurations\": [\r\n {\r\n \"name\": \"appGatewayFrontendIP\",\r\n + \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1/gatewayIPConfigurations/appGatewayFrontendIP\",\r\n + \ \"etag\": \"W/\\\"eeaf4c1f-c456-4f75-9933-2a0ac18144c5\\\"\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n + \ \"subnet\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/virtualNetworks/ag1Vnet/subnets/default\"\r\n + \ }\r\n },\r\n \"type\": \"Microsoft.Network/applicationGateways/gatewayIPConfigurations\"\r\n + \ }\r\n ],\r\n \"sslCertificates\": [],\r\n \"authenticationCertificates\": + [],\r\n \"frontendIPConfigurations\": [\r\n {\r\n \"name\": + \"appGatewayFrontendIP\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1/frontendIPConfigurations/appGatewayFrontendIP\",\r\n + \ \"etag\": \"W/\\\"eeaf4c1f-c456-4f75-9933-2a0ac18144c5\\\"\",\r\n + \ \"type\": \"Microsoft.Network/applicationGateways/frontendIPConfigurations\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n + \ \"privateIPAddress\": \"10.0.0.6\",\r\n \"privateIPAllocationMethod\": + \"Dynamic\",\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/virtualNetworks/ag1Vnet/subnets/default\"\r\n + \ },\r\n \"httpListeners\": [\r\n {\r\n \"id\": + \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1/httpListeners/appGatewayHttpListener\"\r\n + \ }\r\n ]\r\n }\r\n }\r\n ],\r\n \"frontendPorts\": + [\r\n {\r\n \"name\": \"appGatewayFrontendPort\",\r\n \"id\": + \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1/frontendPorts/appGatewayFrontendPort\",\r\n + \ \"etag\": \"W/\\\"eeaf4c1f-c456-4f75-9933-2a0ac18144c5\\\"\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n + \ \"port\": 80,\r\n \"httpListeners\": [\r\n {\r\n + \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1/httpListeners/appGatewayHttpListener\"\r\n + \ }\r\n ]\r\n },\r\n \"type\": \"Microsoft.Network/applicationGateways/frontendPorts\"\r\n + \ }\r\n ],\r\n \"backendAddressPools\": [\r\n {\r\n \"name\": + \"appGatewayBackendPool\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1/backendAddressPools/appGatewayBackendPool\",\r\n + \ \"etag\": \"W/\\\"eeaf4c1f-c456-4f75-9933-2a0ac18144c5\\\"\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n + \ \"backendAddresses\": [],\r\n \"requestRoutingRules\": + [\r\n {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1/requestRoutingRules/rule1\"\r\n + \ }\r\n ]\r\n },\r\n \"type\": \"Microsoft.Network/applicationGateways/backendAddressPools\"\r\n + \ }\r\n ],\r\n \"backendHttpSettingsCollection\": [\r\n {\r\n + \ \"name\": \"appGatewayBackendHttpSettings\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1/backendHttpSettingsCollection/appGatewayBackendHttpSettings\",\r\n + \ \"etag\": \"W/\\\"eeaf4c1f-c456-4f75-9933-2a0ac18144c5\\\"\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n + \ \"port\": 80,\r\n \"protocol\": \"Http\",\r\n \"cookieBasedAffinity\": + \"Disabled\",\r\n \"connectionDraining\": {\r\n \"enabled\": + false,\r\n \"drainTimeoutInSec\": 1\r\n },\r\n \"pickHostNameFromBackendAddress\": + false,\r\n \"requestTimeout\": 30,\r\n \"requestRoutingRules\": + [\r\n {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1/requestRoutingRules/rule1\"\r\n + \ }\r\n ]\r\n },\r\n \"type\": \"Microsoft.Network/applicationGateways/backendHttpSettingsCollection\"\r\n + \ }\r\n ],\r\n \"httpListeners\": [\r\n {\r\n \"name\": + \"appGatewayHttpListener\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1/httpListeners/appGatewayHttpListener\",\r\n + \ \"etag\": \"W/\\\"eeaf4c1f-c456-4f75-9933-2a0ac18144c5\\\"\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n + \ \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1/frontendIPConfigurations/appGatewayFrontendIP\"\r\n + \ },\r\n \"frontendPort\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1/frontendPorts/appGatewayFrontendPort\"\r\n + \ },\r\n \"protocol\": \"Http\",\r\n \"hostNames\": + [],\r\n \"requireServerNameIndication\": false,\r\n \"requestRoutingRules\": + [\r\n {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1/requestRoutingRules/rule1\"\r\n + \ }\r\n ]\r\n },\r\n \"type\": \"Microsoft.Network/applicationGateways/httpListeners\"\r\n + \ }\r\n ],\r\n \"urlPathMaps\": [],\r\n \"requestRoutingRules\": + [\r\n {\r\n \"name\": \"rule1\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1/requestRoutingRules/rule1\",\r\n + \ \"etag\": \"W/\\\"eeaf4c1f-c456-4f75-9933-2a0ac18144c5\\\"\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n + \ \"ruleType\": \"Basic\",\r\n \"httpListener\": {\r\n \"id\": + \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1/httpListeners/appGatewayHttpListener\"\r\n + \ },\r\n \"backendAddressPool\": {\r\n \"id\": + \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1/backendAddressPools/appGatewayBackendPool\"\r\n + \ },\r\n \"backendHttpSettings\": {\r\n \"id\": + \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1/backendHttpSettingsCollection/appGatewayBackendHttpSettings\"\r\n + \ }\r\n },\r\n \"type\": \"Microsoft.Network/applicationGateways/requestRoutingRules\"\r\n + \ }\r\n ],\r\n \"probes\": [],\r\n \"rewriteRuleSets\": [],\r\n + \ \"redirectConfigurations\": []\r\n }\r\n}" + headers: + cache-control: + - no-cache + content-length: + - '9139' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:56:41 GMT + etag: + - W/"eeaf4c1f-c456-4f75-9933-2a0ac18144c5" + expires: + - '-1' + pragma: + - no-cache + server: + - Microsoft-HTTPAPI/2.0 + - Microsoft-HTTPAPI/2.0 + strict-transport-security: + - max-age=31536000; includeSubDomains + transfer-encoding: + - chunked + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + x-ms-arm-service-request-id: + - 080b28e9-180e-45f3-80c6-13f4d21f9535 + status: + code: 200 + message: OK +- request: + body: 'b''{"location": "global", "properties": {"description": "Test", "severity": + 2, "enabled": true, "scopes": ["/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1"], + "evaluationFrequency": "PT1M", "windowSize": "PT5M", "criteria": {"odata.type": + "Microsoft.Azure.Monitor.SingleResourceMultipleMetricCriteria", "allOf": [{"name": + "cond0", "metricName": "UnhealthyHostCount", "timeAggregation": "Average", "dimensions": + [{"name": "BackendSettingsPool", "operator": "Include", "values": ["address-pool-dcc-blue~backendHttpSettings"]}], + "criterionType": "StaticThresholdCriterion", "operator": "GreaterThanOrEqual", + "threshold": 1.0}]}}}''' + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - monitor metrics alert create + Connection: + - keep-alive + Content-Length: + - '770' + Content-Type: + - application/json; charset=utf-8 + ParameterSetName: + - -g -n --scopes --description --condition + User-Agent: + - python/3.8.0 (Windows-10-10.0.18362-SP0) msrest/0.6.10 msrest_azure/0.6.2 + azure-mgmt-monitor/0.7.0 Azure-SDK-For-Python AZURECLI/2.1.0 + accept-language: + - en-US + method: PUT + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Insights/metricAlerts/alert1?api-version=2018-03-01 + response: + body: + string: "{\r\n \"location\": \"global\",\r\n \"type\": \"Microsoft.Insights/metricAlerts\",\r\n + \ \"name\": \"alert1\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Insights/metricAlerts/alert1\",\r\n + \ \"properties\": {\r\n \"description\": \"Test\",\r\n \"severity\": + 2,\r\n \"enabled\": true,\r\n \"scopes\": [\r\n \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_metric_alert_special_char000001/providers/Microsoft.Network/applicationGateways/ag1\"\r\n + \ ],\r\n \"evaluationFrequency\": \"PT1M\",\r\n \"windowSize\": \"PT5M\",\r\n + \ \"templateType\": 8,\r\n \"criteria\": {\r\n \"allOf\": [\r\n + \ {\r\n \"threshold\": 1.0,\r\n \"name\": \"cond0\",\r\n + \ \"metricNamespace\": \"microsoft.network/applicationgateways\",\r\n + \ \"metricName\": \"UnhealthyHostCount\",\r\n \"dimensions\": + [\r\n {\r\n \"name\": \"BackendSettingsPool\",\r\n + \ \"operator\": \"Include\",\r\n \"values\": [\r\n + \ \"address-pool-dcc-blue~backendHttpSettings\"\r\n ]\r\n + \ }\r\n ],\r\n \"operator\": \"GreaterThanOrEqual\",\r\n + \ \"timeAggregation\": \"Average\",\r\n \"criterionType\": + \"StaticThresholdCriterion\"\r\n }\r\n ],\r\n \"odata.type\": + \"Microsoft.Azure.Monitor.SingleResourceMultipleMetricCriteria\"\r\n },\r\n + \ \"targetResourceType\": \"microsoft.network/applicationgateways\",\r\n + \ \"actions\": []\r\n }\r\n}" + headers: + api-supported-versions: + - 2017-09-01-preview, 2018-03-01 + cache-control: + - no-cache + content-length: + - '1534' + content-type: + - application/json; charset=utf-8 + date: + - Wed, 04 Mar 2020 05:56:57 GMT + expires: + - '-1' + pragma: + - no-cache + server: + - Microsoft-IIS/10.0 + strict-transport-security: + - max-age=31536000; includeSubDomains + transfer-encoding: + - chunked + vary: + - Accept-Encoding + x-aspnet-version: + - 4.0.30319 + x-content-type-options: + - nosniff + x-ms-ratelimit-remaining-subscription-resource-requests: + - '299' + x-powered-by: + - ASP.NET + status: + code: 200 + message: OK +version: 1 diff --git a/src/azure-cli/azure/cli/command_modules/monitor/tests/latest/test_monitor_metric_alert_scenarios.py b/src/azure-cli/azure/cli/command_modules/monitor/tests/latest/test_monitor_metric_alert_scenarios.py index 7cf9d000493..366133ec28b 100644 --- a/src/azure-cli/azure/cli/command_modules/monitor/tests/latest/test_monitor_metric_alert_scenarios.py +++ b/src/azure-cli/azure/cli/command_modules/monitor/tests/latest/test_monitor_metric_alert_scenarios.py @@ -78,6 +78,30 @@ def test_metric_alert_v2_scenario(self, resource_group, storage_account): self.check('criteria.allOf[0].dimensions[0].values[0]', '*') ]) + @ResourceGroupPreparer(name_prefix='cli_test_metric_alert_special_char') + def test_metric_alert_special_char_scenario(self, resource_group): + self.kwargs.update({ + 'alert': 'alert1', + 'rg': resource_group + }) + self.cmd('network application-gateway create -g {rg} -n ag1') + gateway_json = self.cmd('network application-gateway show -g {rg} -n ag1').get_output_in_json() + self.kwargs.update({ + 'ag_id': gateway_json['id'], + }) + self.cmd('monitor metrics alert create -g {rg} -n {alert} --scopes {ag_id} --description "Test"' + ' --condition "avg UnhealthyHostCount>= 1 where BackendSettingsPool includes address-pool-dcc-blue~backendHttpSettings"', + checks=[ + self.check('description', 'Test'), + self.check('severity', 2), + self.check('autoMitigate', None), + self.check('windowSize', '0:05:00'), + self.check('evaluationFrequency', '0:01:00'), + self.check('length(criteria.allOf)', 1), + self.check('length(criteria.allOf[0].dimensions)', 1), + self.check('criteria.allOf[0].dimensions[0].values[0]', 'address-pool-dcc-blue~backendHttpSettings') + ]) + @ResourceGroupPreparer(name_prefix='cli_test_monitor') def test_metric_alert_basic_scenarios(self, resource_group): vm = 'vm1'