Grafana: рдЯреЗрдореНрдкреНрд▓реЗрдЯ рд╡реИрд░рд┐рдПрдмрд▓ рдорд╛рди рдХреЗ рдХрд╕реНрдЯрдо рдореИрдкрд┐рдВрдЧ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдВ -> рдЯреЗрдХреНрд╕реНрдЯ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 7 рдирд╡ре░ 2014  ┬╖  145рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: grafana/grafana

рдХреЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ: рдЖрдк 'рдЖрдИрдбреА' рдкреНрд░реЙрдкрд░реНрдЯреА рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдореЗрдЯреНрд░рд┐рдХреНрд╕ рдХреЛ рд╕реНрдЯреЛрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рд▓реЗрдХрд┐рди рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рд╡реЗрд░рд┐рдПрдмрд▓ рд╕рд┐рд▓реЗрдХреНрд╢рди UI рдПрдХ рдЕрдзрд┐рдХ рдорд╛рдирд╡реАрдп рдЕрдиреБрдХреВрд▓ рд▓реЗрдмрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдЖрдк рдПрдХ рдЖрдВрддрд░рд┐рдХ рдбреЛрдореЗрди рдЖрдИрдбреА рдХреЗ рд╕рд╛рде рдбреЛрдореЗрди рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдореАрдЯреНрд░рд┐рдХ рдЯреНрд░реИрдХ рдХрд░рддреЗ рд╣реИрдВ рд▓реЗрдХрд┐рди рдЯреЗрдореНрдкреНрд▓реЗрдЯ рд╡реИрд░рд┐рдПрдмрд▓ рдЪрдпрдирдХрд░реНрддрд╛ UI рдореЗрдВ рдбреЛрдореЗрди рдХреЗ URL рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред

@torkelo рдореИрдВ рдЗрд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдореЗрдВ рдХрдЯреМрддреА рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ, рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдкрд░ рдЖрдкрдХреЗ рдХреНрдпрд╛ рд╡рд┐рдЪрд╛рд░ рд╣реИрдВ? рдореЗрд░реЗ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдХреЗ рд▓рд┐рдП рдореИрдВ рдореВрд▓реНрдп -> тАЛтАЛрдкрд╛рда рд░реВрдкрд╛рдВрддрд░рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдордирдорд╛рдирд╛ рдЬреЗрдПрд╕ рдлрд╝рдВрдХреНрд╢рди рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХреНрдпреЛрдВрдХрд┐ рдореБрдЭреЗ рд▓реБрдХрдЕрдк рдХреЗ рд▓рд┐рдП рдмрд╛рд╣рд░реА рд╕реЗрд╡рд╛ рдХреЛ рд╣рд┐рдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдореИрдВ рд╕реЛрдЪ рд░рд╣рд╛ рдерд╛ рдХрд┐ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдбреИрд╢рдмреЛрд░реНрдб JSON рдореЗрдВ рдПрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдорд╛рди рдЬреЛрдбрд╝ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рдореИрдкрд┐рдВрдЧ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддрд╛ рд╣реИред рдкреВрд░реНрд╡ рдирд┐рд░реНрдорд┐рдд рдореИрдкрд┐рдВрдЧ рдлрд╝рдВрдХреНрд╢рдВрд╕ (рдЬреИрд╕реЗ рд░реЗрдЧреЗрдХреНрд╕ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди) рдХреЗ рд╕рд╛рде рдЕрдзрд┐рдХ рддреБрдЪреНрдЫ рдореИрдкрд┐рдВрдЧ рдХреЛ рд╕рдВрднрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдпреВрдЖрдИ рд╕рдорд░реНрдерди рдмрд╛рдж рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдЗрд╕рдХреЗ рд╕рд╛рде рд╣реА рдпреВрдЖрдИ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреВрд░реНрдг рдбреИрд╢рдмреЛрд░реНрдб JSON рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рднреА рдЬреБрдбрд╝реА рд╣реЛрдЧреА, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдирд┐рд░реНрдпрд╛рдд -> рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ -> рдЖрдпрд╛рдд рдореБрд╢реНрдХрд┐рд▓ рд╕рд╛рдмрд┐рдд рд╣реЛрдиреЗ рдкрд░ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рд░реНрдп рдХрд░реЗрдЧрд╛ред

aredashboard aredashboartemplating typfeature-request

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

@thinrope рд╕реЗ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдХреЛ рдареАрдХ рд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рд╕реБрдВрджрд░ рдлрд┐рдХреНрд╕ рдЗрдореНрд╣реЛ рд╣реЛрдЧрд╛ред
рдпрджрд┐ рд╣рдо рдПрдХ рдХрд╕реНрдЯрдо рдЪрд░ рдореЗрдВ JSON рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╛ рдПрдХ рдЪрд░ рдкреНрд░рдХрд╛рд░ "JSON" рд╣реИ, рддреЛ рд╣рдо рдЗрд╕реЗ рд╣реИрдХ рдХреЗ рдмрд┐рдирд╛ рд╣рд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдореБрдЭреЗ рдХреЛрдИ рдХрдорд┐рдпрд╛рдВ рдирд╣реАрдВ рджрд┐рдЦрддреА рд╣реИрдВред

рд╕рднреА 145 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдЖрдк рдЗрд╕реЗ рд╕реНрдХреНрд░рд┐рдкреНрдЯреЗрдб рдбреИрд╢рдмреЛрд░реНрдб рдХреЗ рд╕рд╛рде рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдЗрд╕реЗ рдирд┐рдпрдорд┐рдд/рд╕рд╣реЗрдЬреЗ рдЧрдП рдЬреЗрд╕рди рдбреИрд╢рдмреЛрд░реНрдб рдореЗрдВ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХрд╛ рд╕реНрд╡рд╛рдЧрдд рд╣реИред

+1

рдореИрдВ рднреА рдЗрд╕рдХреЗ рдХрдо рд╕реЗ рдХрдо рдПрдХ рд╕рд░рд▓ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рдерд╛ред рдП -> рдмреА . рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХреА рдЧрдИ рдореИрдкрд┐рдВрдЧ рдЬреИрд╕рд╛ рдХреБрдЫ

рдореЗрд░реЗ рдкрд░рд┐рджреГрд╢реНрдп рдореЗрдВ рдореИрдВ рдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдбреНрд░реЙрдкрдбрд╛рдЙрди (CustomerName1, CustomerName2, рдЖрджрд┐) рдореЗрдВ рдПрдХ рдЗрдХрд╛рдИ рдирд╛рдо рдХрд╛ рдЪрдпрди рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдЬрдм рдореАрдЯреНрд░рд┐рдХ рдирд╛рдо рдХреА рдмрд╛рдд рдЖрддреА рд╣реИ рддреЛ рдЖрдВрддрд░рд┐рдХ рд░реВрдк рд╕реЗ рдПрдХ рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдЖрдИрдбреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
app.request.$customer1_ID.count

+1

#3138 . рд╕реЗ рд╡рд┐рд▓рдп

рдЙрджрд╛рд╣рд░рдг рдХреЗ fooBar рдФрд░ baz_quuxInternal рдорд╛рдиреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдХрд╕реНрдЯрдо рдЯреЗрдореНрдкрд▓реЗрдЯ рд╡реИрд░рд┐рдПрдмрд▓ рдмрдирд╛рддреЗ рд╕рдордп, UI рдХреЛ "Foo bar" рдФрд░ "Baz" рдХреЗ рд░реВрдк рдореЗрдВ рдЪреЗрдХрдмреЙрдХреНрд╕ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдПред

рджреЛрд╣рд░рд╛рд╡ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╛рд░-рдмрд╛рд░ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдФрд░ рдПрдХ рдХрд╕реНрдЯрдо рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдпрд╣ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЖрдо рд╣реИ, рд▓реЗрдХрд┐рди рд╢реАрд░реНрд╖ рд╕реНрддрд░ рдХреЗ рдореАрдЯреНрд░рд┐рдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдЕрдиреБрдХреВрд▓ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред

рдХреЛрдИ рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рдкреВрдЫреЗ рдЧрдП рдЯреЗрдореНрдкрд▓реЗрдЯ рдорд╛рдиреЛрдВ (рдЬреИрд╕реЗ рдЧреНрд░реЗрдлрд╛рдЗрдЯ рдЧреБрдг) рдХреЗ рд╕рд╛рде-рд╕рд╛рде рд░реЗрдЧреЗрдХреНрд╕ (рдпрджрд┐ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рд╕рд╛рдорд╛рдиреНрдп рд╣реИ) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕рдХрд╛ рд╕рдорд░реНрдерди рдХрд░ рд╕рдХрддрд╛ рд╣реИред рд░реЗрдЧреЗрдХреНрд╕ рд╕рдорд░реНрдерди рдкрд╣рд▓реЗ рд╕реЗ рдореМрдЬреВрдж рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдорд╛рди рдФрд░ рд▓реЗрдмрд▓ рджреЛрдиреЛрдВ рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреЗрд╡рд▓ рдореВрд▓реНрдп рдХреЗ рд▓рд┐рдП рдХрд░рдирд╛ рдореВрд▓реНрдпрд╡рд╛рди рд╣реЛрдЧрд╛ред

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рдХреЛрдИ рдЧреНрд░реЗрдлрд╛рдЗрдЯ рдХреНрд╡реЗрд░реА рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП kafka.messagesByTopic.myservice_* рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рддреА рд╣реИ, рддреЛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдХреЛрдИ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЛ рдЙрдкрд╕рд░реНрдЧ рдХреЛ рд╣рдЯрд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реЛред рд▓реЗрдХрд┐рди рдЬрдм рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкреИрдирд▓реЛрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЙрдкрд╕рд░реНрдЧ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЗрд╕ рдкрд░ рдХрд╛рдо рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ (рдЧреНрд░рд╛рдлрд╛рдирд╛ 2.x рдФрд░ рдмрд╛рдж рдХреЗ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ) рдЕрдм рдЯреЗрдореНрдкрд▓реЗрдЯ рдЪрд░ рдХреЛ рдПрдХ рдореАрдЯреНрд░рд┐рдХ рд╕рдВрдкрддреНрддрд┐ рдореЗрдВ рдПрдореНрдмреЗрдб рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдХреЛрдИ рднреА рд╕рднреА рдкреИрдирд▓реЛрдВ рдФрд░ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдореЗрдВ рд╕рднреА рдореАрдЯреНрд░рд┐рдХ рдореЗрдВ рдЙрдкрд╕рд░реНрдЧ рдХреЛ рд╣рд╛рд░реНрдбрдХреЛрдб рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рд╕реЗ рдмрдЪрдирд╛ рдмреЗрд╣рддрд░ рд╣реИред

рдПрдХ рдмрд╛рд░ рдЬрдм рдпреЗ "рд▓реЗрдмрд▓" рдорд╛рди рдореМрдЬреВрдж рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВ, рддреЛ рдЙрдиреНрд╣реЗрдВ рдкреИрдирд▓реЛрдВ рдХреЗ рдЕрдВрджрд░ рднреА рдПрдХреНрд╕реЗрд╕ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧрд╛ред рдЬреИрд╕реЗ рдХрд┐ рдПрдХ рд╡реЗрд░рд┐рдПрдмрд▓ рдХреЛ рд░реЛ рдФрд░/рдпрд╛ рдкреИрдирд▓ рдЯрд╛рдЗрдЯрд▓ рдореЗрдВ рдПрдореНрдмреЗрдб рдХрд░рддреЗ рд╕рдордпред рдпрд╛ рддреЛ рд╣рдо рдЗрд╕реЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд▓реЗрдмрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рдпрджрд┐ рдПрдХ рд╢реАрд░реНрд╖рдХ рдлрд╝реАрд▓реНрдб рдореЗрдВ рдПрдореНрдмреЗрдб рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ), рдпрд╛ рд╢рд╛рдпрдж рдХреБрдЫ рд╡реИрдХрд▓реНрдкрд┐рдХ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рд╕рд╛рде (рдЬреИрд╕реЗ $$Variable , рдпрд╛ рдХреБрдЫ рдЬреЛ рднреА рд╣реЛ)

http://play.grafana.org/dashboard/db/test?editview=templateing рдПрдХ рд╡рд┐рдХрд▓реНрдк рдХреЗ рд░реВрдк рдореЗрдВ "рд╡реИрд░рд┐рдПрдмрд▓ рд▓реЗрдмрд▓" рджрд┐рдЦрд╛рддрд╛ рд╣реИред рдХреНрдпрд╛ рдЗрд╕реЗ рдмрдВрдж рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ?

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдореИрдВрдиреЗ рдмрдЧ рдХреЛ рдЧрд▓рдд рд╕рдордЭрд╛, рдХреНрд╖рдорд╛ рдХрд░реЗрдВ! :) рд▓рдЧреЗ рд░рд╣реЛред

рдпрд╣ рдЪрд░ рдХреЗ рд▓рд┐рдП рдЕрдиреБрдХреВрд▓ рдирд╛рдо рд░рдЦрдиреЗ рдХрд╛ рдПрдХ рд╡рд┐рдХрд▓реНрдк рд╣реИ, рди рдХрд┐ рдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдорд╛рди

+1

+1

+1

+1

+1

+1

рдЗрд╕рдХреА рд╕реНрдерд┐рддрд┐ рдХреНрдпрд╛ рд╣реИ ?
рдХреНрдпрд╛ рдРрд╕рд╛ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ ?

рдХреНрдпрд╛ рдпрд╣ 3.0 рдлрд╛рдЗрдирд▓ рдХреЗ рд▓рд┐рдП рд╕рдВрднрд╡ рд╣реИ?
рдпрд╣ рдПрдХ рдРрд╕реА рд╕реБрд╡рд┐рдзрд╛ рдХреА рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдмрд╣реБрдд рд╕реЗ рд▓реЛрдЧ рдЗрдВрддрдЬрд╛рд░ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдореБрдЭреЗ рд╢рд╛рдорд┐рд▓ рдХрд░рддреЗ рд╣реБрдП :-)

+1
рдореИрдВ рдЖрдо рддреМрд░ рдкрд░ рдирд┐рдпрдорд┐рдд рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ рдЬреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рднрдпрд╛рдирдХ рд▓рдЧрддрд╛ рд╣реИред

+1

+1

+1
рдЗрд╕рдХреЗ рдмрд┐рдирд╛, рд░реЗрдЧреЗрдХреНрд╕ рд╡реНрдпрдВрдЬрдХ рдЯреЗрдореНрдкрд▓реЗрдЯ рдЪрд░реЛрдВ рдореЗрдВ рдЕрдиреБрдкрдпреЛрдЧреА рд╣реИрдВред

+1

+1

+1

+1

+1

+1

@mbell697 @torkelo

рдореИрдВрдиреЗ рдЗрд╕реЗ рдПрдХ рдЖрдВрддрд░рд┐рдХ рд╕реЗрд╡рд╛ рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд┐рдпрд╛ рд╣реИ рдЬреЛ рдЧреНрд░рд╛рдлрд╝рд╛рдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рд╣рдо рдореЗрдЬрдмрд╛рдиреЛрдВ рдХреЗ рд▓рд┐рдП рдпреВрдпреВрдЖрдИрдбреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ (рдЗрд╕рд▓рд┐рдП рд╣реЛрд╕реНрдЯрдирд╛рдо рдореЗрдВ рдмрджрд▓рд╛рд╡ рд╕реЗ рдореЗрдЯреНрд░рд┐рдХреНрд╕ рдЗрддрд┐рд╣рд╛рд╕ рдФрд░ рдХрдИ рдЕрдиреНрдп рдЪреАрдЬреЗрдВ рдирд╣реАрдВ рдЦреЛрддреА рд╣реИрдВ), рдЙрди рдпреВрдпреВрдЖрдИрдбреА рдХреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рджрд┐рдЦрд╛рдирд╛ рдЕрд╕реНрд╡реАрдХрд╛рд░реНрдп рдерд╛ред рдореИрдВрдиреЗ рдЕрдкрдиреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреИрдЪ рдХрд┐рдпрд╛ рдЬрд╣рд╛рдВ рд╣рдо рдпреВрдпреВрдЖрдИрдбреА рдорд╛рдиреЛрдВ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рддреЗ рд╣реИрдВ рдФрд░ рд╣рдорд╛рд░реЗ рдЖрд╡реЗрджрди рдХреЗ http рдПрдВрдбрдкреЙрдЗрдВрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЙрдирдХрд╛ рдЕрдиреБрд╡рд╛рдж рдХрд░рддреЗ рд╣реИрдВред рдпрд╣ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ рд▓реЗрдХрд┐рди рдореИрдВ рдХреБрдЫ рдРрд╕рд╛ рдХрд░рдирд╛ рдкрд╕рдВрдж рдХрд░реВрдВрдЧрд╛ рдЬреЛ рд╕рд╛рдорд╛рдиреНрдп рдФрд░ рд╕реНрд╡реАрдХреГрдд рдЕрдкрд╕реНрдЯреНрд░реАрдо рд╣реЛред

рдХреНрдпрд╛ рдПрдХ 'variable_translation_url' рд╡рд┐рдХрд▓реНрдк рдЬреЛрдбрд╝рдирд╛ рд╕реНрд╡реАрдХрд╛рд░реНрдп рд╣реЛрдЧрд╛ рдЬреЛ рдПрдХ рдРрд╕реЗ url рдХреА рдУрд░ рдЗрд╢рд╛рд░рд╛ рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдореИрдкрд┐рдВрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реИ? (рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рддреЛ рдПрдХ рд╡реИрдХрд▓реНрдкрд┐рдХ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдЯреЛрдХрди рдХреЗ рд╕рд╛рде) рдпрд╛ рдПрдХ рд╡реЗрд░рд┐рдПрдмрд▓_рдЯреНрд░рд╛рдВрд╕рд▓реЗрд╢рди_рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЬреЛ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕реНрд░реЛрдд рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЙрди рдмрд┐рдВрджреБрдУрдВ рдкрд░ templateValuesSrv.js рдореЗрдВ рд▓рдЧрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдЬрд╣рд╛рдВ рдЕрдиреБрд╡рд╛рдж рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ (рдпрджрд┐ рд╡рд╣ рд╡рд┐рдХрд▓реНрдк рд╕реЗрдЯ рд╣реИ)?

рдХреНрдпрд╛ рдЖрдк рдЕрдкрдиреЗ рд▓рд┐рдП templateValuesSrv.js рдХреЛрдб рд╕рд╛рдЭрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ? рдореИрдВ рдЗрд╕реЗ рдЖрдЬрдорд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред

@ZhuWanShan рдпрд╣ рдореВрд▓ рд░реВрдк рд╕реЗ рдпрд╣ рд╣реИ:

https://github.com/sangoma/grafana/commit/fa109c23bc92c3121173579afbd87a04d7e2f523

рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЖрдк рд╡рд╣рд╛рдВ 2 рджреГрд╖реНрдЯрд┐рдХреЛрдг рджреЗрдЦреЗрдВрдЧреЗред рдкрд╣рд▓реЗ рдХрд╛ рдорддрд▓рдм рдЕрдзрд┐рдХ рд╕рд╛рдорд╛рдиреНрдп рд╣реЛрдирд╛ рдерд╛, рдПрдХ 'рдХреНрд╡реЗрд░реА' рд╕рдВрдкрддреНрддрд┐ рдХреЗ рд╕рд╛рде рдПрдХ рдирдпрд╛ рдЯреЗрдореНрдкрд▓реЗрдЯ рдЪрд░ рдкреНрд░рдХрд╛рд░ 'http' рдкреЗрд╢ рдХрд░рдирд╛, рдЬреЛ рдореИрдкрд┐рдВрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ HTTP рдпреВрдЖрд░рдПрд▓ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ (рджреЗрдЦреЗрдВ _getHttpVariableOptions)ред рдмрд╛рдж рдореЗрдВ рдореИрдВрдиреЗ рдПрдХ рджреВрд╕рд░реА рд╡рд┐рдзрд┐ рд▓рд╛рдЧреВ рдХреА рдЬреЛ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рддреА рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдХреЛрдИ рд╡рд┐рдХрд▓реНрдк рдЯреЗрдХреНрд╕реНрдЯ (рдбрд┐рд╕реНрдкреНрд▓реЗ рд╡реИрд▓реНрдпреВ) рдпреВрдпреВрдЖрдИрдбреА рд░реЗрдЧреЗрдХреНрд╕ рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ, рдФрд░ рдЬреЛ рдХреБрдЫ рднреА рд╡реИрд░рд┐рдПрдмрд▓ рдХреА рдореИрдкрд┐рдВрдЧ рдХреЛ рдордЬрдмреВрд░ рдХрд░рддрд╛ рд╣реИ рд╡рд╣ рд╣реИ рдХрд┐ рд╣рд╛рд░реНрдб-рдХреЛрдбреЗрдб HTTP рдХреЙрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ /api/v1/nodes/grafana-hosts/ рдЬреЛ рд░рд┐рдЯрд░реНрди рджреЗрддрд╛ рд╣реИ рд╕рднреА рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреА рдореИрдкрд┐рдВрдЧ рдЗрд╕рдиреЗ рдЕрдм рддрдХ рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд┐рдпрд╛ рд╣реИ, рдмрд╕ рдЗрд╕реЗ рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рд╡рд┐рдзрд┐ рдореЗрдВ рдмрджрд▓рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рджрд┐рд╢рд╛ рджреЗрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

+1

+1

рд░реБрдЪрд┐ рд░рдЦрдиреЗ рд╡рд╛рд▓реЗ рдХрд┐рд╕реА рднреА рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд▓рд┐рдП рдореИрдВ рд╕рд░рд▓ JSON рдбреЗрдЯрд╛рд╕реЛрд░реНрд╕ рдкреНрд▓рдЧрдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рдЕрдкрдиреЗ рд╡рд┐рд╢реЗрд╖ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛ред

рдЙрд╕ рдиреЗ рдХрд╣рд╛ рдХрд┐ рдкреНрд▓рдЧрдЗрди рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЯреЗрдореНрдкрд▓реЗрдЯ рдЪрд░ рдкреНрд░рд╢реНрдиреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдореЗрд░реЗ рдкреБрд▓ рдЕрдиреБрд░реЛрдз рдХреЛ рдорд╛рд╕реНрдЯрд░ рдореЗрдВ рд╡рд┐рд▓рдп рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдкреНрд▓рдЧрдЗрди рдХреА рдПрдХ рдЕрджреНрдпрддрди Grafana.net рд░рд┐рд▓реАрдЬрд╝ рдХреЛ рдХрд┐рд╕реА рдмрд┐рдВрджреБ рдкрд░ рдкрд╛рд▓рди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдЗрд╕рдХреЗ рд╕рд╛рде рдЖрдк рдЧреНрд░рд╛рдлрд╛рдирд╛ рдореЗрдВ рдбреЗрдЯрд╛ рд╕реНрд░реЛрддреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╕реНрдЯрдо HTTP рдПрдВрдбрдкреЙрдЗрдВрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЙрдиреНрд╣реЗрдВ рд╕рд┐рд░реНрдл 4 рддрд░реАрдХреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рд╣реИред рдЬрдм рдХреНрд╡реЗрд░реА-рдЖрдзрд╛рд░рд┐рдд рдЯреЗрдореНрдкреНрд▓реЗрдЯ рд╡реИрд░рд┐рдПрдмрд▓ рдХреЗ рд╕рд╛рде рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ HTTP рдПрдВрдбрдкреЙрдЗрдВрдЯ рдХреЛ /search API рдЕрдиреБрд░реЛрдз рдкреНрд░рд╛рдкреНрдд рд╣реЛрдЧрд╛ рдФрд░ рдмреЙрдбреА рдлреЙрд░реНрдо рдореЗрдВ рдПрдХ JSON рдСрдмреНрдЬреЗрдХреНрдЯ рд╣реЛрдЧреА: { "target": "{template query content here}" } ред рдЖрдк рдЕрдкрдиреА рдЗрдЪреНрдЫрд╛рдиреБрд╕рд╛рд░ рдХреНрд╡реЗрд░реА рд╕рд╛рдордЧреНрд░реА рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдЖрдкрдХреЗ рдПрдВрдбрдкреЙрдЗрдВрдЯ рд╕реЗ рдорд╛рдиреЛрдВ рдХреА рдПрдХ рд╕рд░рдгреА рд▓реМрдЯрд╛рдиреЗ рд╕реЗ рдЯреЗрдореНрдкрд▓реЗрдЯ рдЪрд░ рдорд╛рдиреЛрдВ рдХреА рдПрдХ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рд╕реВрдЪреА ["custom value 1", "custom value 2"] рдХреЗ рд░реВрдк рдореЗрдВ рдмрди рдЬрд╛рдПрдЧреА: [{ "text": "custom value 1", value: 0 }] рдЬрд╣рд╛рдВ text рд╕рдВрдкрддреНрддрд┐ рдкреНрд░рддрд┐ рд╕рд░рдгреА рдЖрдЗрдЯрдо рд▓реМрдЯрд╛рдпрд╛ рдЧрдпрд╛ рдорд╛рди рд╣реИ рдФрд░ value рд╕рдВрдкрддреНрддрд┐ рд╡рд╛рдкрд╕реА рд╕рд░рдгреА рдореЗрдВ рдЪрд░ рдХреА рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рд╣реИред

рд╡реИрдХрд▓реНрдкрд┐рдХ рд░реВрдк рд╕реЗ рдЖрдк рдЯреЗрдХреНрд╕реНрдЯ/рд╡реИрд▓реНрдпреВ рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдХреА рдПрдХ рд╕рд░рдгреА [{ "text": "label", "value": 123 }] рд╡рд╛рдкрд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЧреНрд░реИрдлрд╛рдирд╛ text рдкреНрд░реЙрдкрд░реНрдЯреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдЯреЗрдореНрдкрд▓реЗрдЯ рд╡реИрд░рд┐рдПрдмрд▓ рдХреЗ рд▓реЗрдмрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд░реЗрдЧрд╛, рдФрд░ value рдкреНрд░реЙрдкрд░реНрдЯреА рдХреЗ рдХрдЪреНрдЪреЗ рдореВрд▓реНрдп рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдЧрд╛ рдЯреЗрдореНрдкрд▓реЗрдЯ рдЪрд░ред

рд░реЗрдЧреЗрдХреНрд╕ рдлреЙрд░реНрдо рдореЗрдВ рдХреНрд╡реЗрд░реА рдореЗрдВ рдЕрдиреНрдп рдЯреЗрдореНрдкрд▓реЗрдЯ рдЪрд░ рдХреЛ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдЗрдВрдЬреЗрдХреНрдЯ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд▓рд┐рдП рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдПрдВрдбрдкреЙрдЗрдВрдЯ рдореЗрдВ рднреЗрдЬрдирд╛ рд╕рдВрднрд╡ рд╣реИред

рдпрд╣ рд╕рднреА рдПрд▓рд┐рдпрд╛рд╕рд┐рдВрдЧ рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рдХреЛ рд╣рд▓ рдирд╣реАрдВ рдХрд░реЗрдЧрд╛, рд▓реЗрдХрд┐рди рдПрдХ рдордирдорд╛рдирд╛ HTTP рдбреЗрдЯрд╛ рд╕реНрд░реЛрдд рд╣реЛрдирд╛ рдЬреЛ рдЯреЗрдореНрдкрд▓реЗрдЯ рдЪрд░ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреНрд╡реЗрд░реА рдореЗрдВ рдЕрдиреНрдп рдЯреЗрдореНрдкрд▓реЗрдЯ рдЪрд░ рдХреЛ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдЗрдВрдЬреЗрдХреНрдЯ рдХрд░рдирд╛ рд╢рд╛рдорд┐рд▓ рд╣реИ, рдпрд╣ рдПрдХ рдЕрдЪреНрдЫрд╛ рдЙрдкрдХрд░рдг рд╣реИред

рдореИрдВ рдордиреБрд╖реНрдп рд╣реВрдВред

+1

+1

+1

+1

+1

+1

+1000

+1

+2

рдЗрд╕рдХрд╛ рд╣реЛрдирд╛ рдЕрддреНрдпрдВрдд рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧрд╛ред рдЕрд╕рд▓ рдореЗрдВ, рдореЗрд░реЗ рдкрд╛рд╕ рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдирд╛рдо рдФрд░ рдпреВрдЖрдИрдбреА рджреЛрдиреЛрдВ рд╣реИрдВред рдореИрдВ рдирд╛рдо рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдпреВрдпреВрдЖрдИрдбреА рдХреЛ рдЪрд░ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред

рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдЕрдЧрд░ рд╣рдо рдРрд╕рд╛ рдХреБрдЫ рдХрд░ рд╕рдХреЗрдВ:

рдХреНрд╡реЗрд░реА (рдореМрдЬреВрджрд╛): "vcd_vm" рд╕реЗ KEY = "uuid" рдХреЗ рд╕рд╛рде рдЯреИрдЧ рдорд╛рди рджрд┐рдЦрд╛рдПрдВ рдЬрд╣рд╛рдВ "OrgVdc" =~ /^$vDC$/)

рд▓реЗрдмрд▓ (рдирдпрд╛): рдХреБрдВрдЬреА = "рдирд╛рдо" рдХреЗ рд╕рд╛рде "vcd_vm" рд╕реЗ рдЯреИрдЧ рдорд╛рди рджрд┐рдЦрд╛рдПрдВ рдЬрд╣рд╛рдВ "uuid" =~ /^$tag$/)

+1

+1

+1

+1

+1

+1

+1

рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ 'рдХрд╕реНрдЯрдо' рдЯреЗрдореНрдкрд▓реЗрдЯ рдЪрд░ 'рдорд╛рди' рдХреА рд╕реВрдЪреА рдФрд░ 'рд▓реЗрдмрд▓' рдХреА рд╕реВрдЪреА (рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ, рдПрдХ рдХрд╕реНрдЯрдо рд╣реИрд╢/рддрд╛рдирд╛рд╢рд╛рд╣реА) рджреЛрдиреЛрдВ рдХреЛ рдЗрдирдкреБрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рд▓реЗрддрд╛ рд╣реИред

+1

+1

рдпрд╣ рдПрдбрдмреНрд▓реНрдпреВрдПрд╕ рдХреНрд▓рд╛рдЙрдбрдлреНрд░рдВрдЯ рдбреЗрдЯрд╛ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧрд╛, рдЬреИрд╕рд╛ рдХрд┐ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдХреНрд▓рд╛рдЙрдбрд╡реЙрдЪ рдирд┐рд░реНрдпрд╛рддрдХ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрдпрд╛рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред CloudFront рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛ рдЖрдИрдбреА рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдХреЛрдИ рдорд╛рдирд╡ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдЧреНрд░рд╛рдлрд╝ рджреЗрдЦрдиреЗ рд╡рд╛рд▓реЗ рдордиреБрд╖реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП "EAUUWLGUQEPFWV; EVWWU9PGWIB" рдХреЗ рдмрдЬрд╛рдп "foo.example.com; bar.example.com" рджреЗрдЦрдирд╛ рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИ...

+1

рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдПрдХ рд╢рд╛рдирджрд╛рд░ рдЙрддреНрдкрд╛рдж рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдФрд░ рдЗрд╕реЗ рджреБрдирд┐рдпрд╛ рдХреЗ рд╕рд╛рде рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж!

рдЖрдиреЗ рд╡рд╛рд▓реЗ рдорд╣реАрдиреЛрдВ рдореЗрдВ рдЗрд╕рдХреЗ рд▓рд╛рдЧреВ рд╣реЛрдиреЗ рдХреА рдХреНрдпрд╛ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ, рдЗрд╕ рдкрд░ рдХреЛрдИ рд╕рдВрдХреЗрдд? рдореИрдВ рдмрд╕ рдЗрд╕ рдмрд╛рдд рдХрд╛ рд╡рдЬрди рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рдЖрдЧреЗ рдмрдврд╝рдиреЗ рдФрд░ @meverett рдХреЗ рд╕реБрдЭрд╛рдП рдЧрдП рдХрд╛рдордХрд╛рдЬ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдпрд╛ рдЗрд╕рдХреЗ рд▓рд┐рдП рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ рдХрд┐рд╕ рд╣рдж рддрдХ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред

HTTP рдПрдВрдбрдкреЙрдЗрдВрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЗрд╕реЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд░рдирд╛ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЗ рдЕрддреНрдпрдзрд┐рдХ рд╕рд╛рдорд╛рдиреНрдпреАрдХреГрдд рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдПрдХ рд╕рд╛рдл рд╕рдорд╛рдзрд╛рди рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣рд╛рдВ рд╡рд░реНрдгрд┐рдд рдХрдИ рдЙрдкрдпреЛрдЧ рдорд╛рдорд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдУрд╡рд░рдХрд┐рд▓ рдХреА рддрд░рд╣ рд▓рдЧрддрд╛ рд╣реИ (рдореЗрд░рд╛ рд╕рд╣рд┐рдд) рдЬрд╣рд╛рдВ рд╕рднреА рдХреА рдЬрд░реВрд░рдд рд╣реИ "рдореИрддреНрд░реАрдкреВрд░реНрдг" рдХреА рдорд╛рдореВрд▓реА рд╕рдВрдЦреНрдпрд╛ рдкрд░ рдореВрд▓ рд╕реНрдерд┐рд░ рдорд╛рдирдЪрд┐рддреНрд░рдг рдкреНрд░рджрд░реНрд╢рди рдирд╛рдо" -> "рдЕрдиреБрдХреВрд▓ рдбреЗрдЯрд╛рдмреЗрд╕ рдирд╛рдо рдирд╣реАрдВ" рдЬреЛрдбрд╝реЗред

@ svet-b fwiw, рд╣рдо @meverett рдХреЗ рд╕реБрдЭрд╛рд╡ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЪрд▓реЗ рдЧрдП рдФрд░ рдпрд╣ рджрд░реНрдж рд░рд╣рд┐рдд рдФрд░ рд╕рд╛рдл рдерд╛ред рдбреЗрдЯрд╛ рд╕реНрд░реЛрдд рдкреНрд▓рдЧрдЗрди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╕ рдХреБрдЫ рд╣реА рдШрдВрдЯреЗред

+1

+1

+1

+1

+1

+1

+1

+1

+1

+1

+1

@meverett рдХрд╛ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдмрд╣реБ рдореВрд▓реНрдп рдЪрд░ рдХреЗ рд╕рд╛рде рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рдкрд░ рдХрдо рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЛ рдХреЗрд╡рд▓ (рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ) influxdb рд╕реЗ рдЯреИрдЧ рдХреЗ рд╕рд╛рде рд▓реЗрдмрд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд╡рд╣рд╛рдВ рдХрд╛рдордХрд╛рдЬ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рд╕реБрдЭрд╛рд╡? :)

+1

+1

+1

+1

+1

рдЕрд░реЗ рд╕рдм, рдЪреВрдВрдХрд┐ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдирд┐рдпрдорд┐рдд рд░реВрдк рд╕реЗ рдЯрдХрд░рд╛рддреА рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдПрдХ рдЙрджрд╛рд╣рд░рдг Node.js рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдПрдХ рд╕рд╛рде рдлреЗрдВрдХрдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рд╣реИ рдЬреЛ рдЙрдкрд░реЛрдХреНрдд рдореЗрд░реЗ рд╕рдорд╛рдзрд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ ред

рдпрд╣ рдмрд╣реБрдд рдмреБрдирд┐рдпрд╛рджреА рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдореЗрд░реА рдореВрд▓ рдЯрд┐рдкреНрдкрдгреА рдореЗрдВ рдЙрд▓реНрд▓рд┐рдЦрд┐рдд рдкреИрдЯрд░реНрди рдХреЛ рдкреВрд░реА рддрд░рд╣ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИред рдФрд░ рдпрджрд┐ рдЖрдк рдЕрдкрдиреЗ рд▓реБрдХ-рдЕрдк рдбреЗрдЯрд╛ рдХреЛ рдПрдХ рдПрдХрд▓ JSON рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдбрд╛рд▓рдХрд░ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдмрд╣реБрдд рдмрд╛рд░ рдЕрдкрдбреЗрдЯ рдирд╣реАрдВ рд╣реЛрдЧреА, рддреЛ рдпрд╣ рдЖрдкрдХреЗ рд▓рд┐рдП рдмрд┐рд▓реНрдХреБрд▓ рдЕрд▓рдЧ рдХрд╛рдо рдХрд░ рд╕рдХрддреА рд╣реИред

рдЕрдиреНрдпрдерд╛ рдЖрдк рдЗрд╕реЗ рдПрдХ рд╢реБрд░реБрдЖрддреА рдмрд┐рдВрджреБ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рдЕрдкрдиреЗ рдПрд▓рд┐рдпрд╛рд╕рд┐рдВрдЧ рдбреЗрдЯрд╛ рдХреЛ рдХрд┐рд╕реА рднреА рд╕реНрд░реЛрдд рд╕реЗ рдПрдХреНрд╕реЗрд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХрд┐рдпрд╛ рдЧрдпрд╛) рдФрд░ рдЗрд╕реЗ рдРрдк рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЗрд╕ рддрд░рд╣ рд╕реЗ рд╕реЗрд╡рд╛ рджреЗрдВ рдХрд┐ SimpleJson рдбреЗрдЯрд╛рд╕реЛрд░реНрд╕ рдкреНрд▓рдЧрдЗрди рдЗрд╕рдХрд╛ рдЙрдкрднреЛрдЧ рдХрд░ рд╕рдХреЗ рдФрд░ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рд╡реИрд░рд┐рдПрдмрд▓ рдЕрд▓рд┐рдпрд╛рд╕рд┐рдВрдЧ/рдореИрдкрд┐рдВрдЧ рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдЙрджрд╛рд╣рд░рдг рд╡реЗрдм рдРрдк рдХреЗ рд▓рд┐рдП рд░рд┐рдкреЛрдЬрд┐рдЯрд░реА рдпрд╣рд╛рдВ рд╣реИ ред

рдЖрд╢рд╛ рд╣реИ рдпреЗ рдорджрдж рдХрд░реЗрдЧрд╛ред рдореЗрд░реЗ рдкрд╛рд╕ рд╕рдордп-рд╕рдордп рдкрд░ рд╕рдорд╛рдзрд╛рди рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рд╕рд╣рд╛рдпрддрд╛/рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдЕрдиреБрд░реЛрдз рд╣реИрдВред

рдЪрд┐рдпрд░реНрд╕

+1

+1

рдЖрдкрдХреЗ рдЕрд╕реНрдерд╛рдпреА рд╕рдорд╛рдзрд╛рди рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, @meverett ред рдореИрдВрдиреЗ рдЖрдкрдХреЗ рд╕рдорд╛рдзрд╛рди рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдбреЙрдХрд░ рдХрдВрдЯреЗрдирд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдбреЙрдХрд░рдлрд╛рдЗрд▓ рдХреЗ рд╕рд╛рде рдПрдХ рднрдВрдбрд╛рд░ рдмрдирд╛рдпрд╛ рд╣реИред рдЗрд╕реЗ рдбреЛрдХрд░рдлрд╛рдЗрд▓ рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдмрд┐рд▓реНрдб рдХреЗ рд╕рд╛рде рдПрдХ рдХрд╕реНрдЯрдо data.json рд▓реЗрдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдпрд╣ рд▓реЛрдЧреЛрдВ рдХреА рдорджрдж рдХрд░рддрд╛ рд╣реИ:

https://github.com/shirakaba/GrafanaSimpleJsonValueMapper-docker

1

+1

+1

рдЬрдм рдЖрдк рдЗрд╕реЗ +1 рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рд░рдЦреЗрдВ рдХрд┐ рдЖрдк рдЙрди 74 рд▓реЛрдЧреЛрдВ рдХреЛ рдкрд░реЗрд╢рд╛рди рдХрд░реЗрдВрдЧреЗ, рдЬреЛ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреА рд╕рджрд╕реНрдпрддрд╛ рд▓реЗ рдЪреБрдХреЗ рд╣реИрдВ рдФрд░ рдЙрдореНрдореАрдж рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХрд┐ рдХреЛрдИ рдЖрдЧреЗ рдмрдврд╝рдХрд░ рд╕реБрдзрд╛рд░ рдХреЛ рд▓рд╛рдЧреВ рдХрд░реЗрдЧрд╛ред
GitHub рдиреЗ рдПрдХ рдХрд╛рд░рдг рдХреЗ рд▓рд┐рдП рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдПрдБ рдЬреЛрдбрд╝реАрдВ ...

+1

+1

+1

рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛! рдП рдХреЗ рдкрд╛рд╕ рд▓рдВрдмреЗ рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдорд╛рдиреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рд╣реИ, рд▓реЗрдХрд┐рди рдореВрд▓реНрдп рдХреЗ рдореБрдХрд╛рдмрд▓реЗ рдкреНрд░рддреНрдпреЗрдХ рдХреЗ рд▓рд┐рдП рдорд╛рдирд╡ рдЕрдиреБрдХреВрд▓ рд▓реЗрдмрд▓ рджрд┐рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдмреЗрд╣рддрд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП
рдЪрд░: myListOfLongs {рдирд╛рдо: рдЯреЛрдпреЛрдЯрд╛ рдореВрд▓реНрдп: 122321312332, рдирд╛рдо: рд░реЗрдиреЙрд▓реНрдЯ рдореВрд▓реНрдп: 6666666}

+1!

+1

+1
#11534 рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреЛрдИ рднреА рдЕрдкрдбреЗрдЯ (рджреЛрд╣рд░рд╛рдП рдЧрдП рдкреИрдирд▓/рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдЧрддрд┐рд╢реАрд▓ рд╢реАрд░реНрд╖рдХреЛрдВ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдВ)

+1

+111111

+1

+1

+1, рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреА рдмрд╣реБрдд рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

+1

+1

+1

+1

+1

рдпрд╣ MySQL рдФрд░ PostgreSQL рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ:

рдПрдХ рдЕрдиреНрдп рд╡рд┐рдХрд▓реНрдк рдПрдХ рдХреНрд╡реЗрд░реА рд╣реИ рдЬреЛ рдПрдХ рдХреБрдВрдЬреА/рдорд╛рди рдЪрд░ рдмрдирд╛ рд╕рдХрддрд╛ рд╣реИред рдХреНрд╡реЗрд░реА рдХреЛ рджреЛ рдХреЙрд▓рдо рд▓реМрдЯрд╛рдиреЗ рдЪрд╛рд╣рд┐рдП рдЬрд┐рдирдХрд╛ рдирд╛рдо __text рдФрд░ __value рд╣реИред __text рдХреЙрд▓рдо рдХрд╛ рдорд╛рди рдЕрджреНрд╡рд┐рддреАрдп рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП (рдпрджрд┐ рдпрд╣ рдЕрджреНрд╡рд┐рддреАрдп рдирд╣реАрдВ рд╣реИ рддреЛ рдкрд╣рд▓реЗ рдорд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ)ред рдбреНрд░реЙрдкрдбрд╛рдЙрди рдХреЗ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдореЗрдВ рдПрдХ рдЯреЗрдХреНрд╕реНрдЯ рдФрд░ рдорд╛рди рд╣реЛрдЧрд╛ рдЬреЛ рдЖрдкрдХреЛ рдЯреЗрдХреНрд╕реНрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рдЕрдиреБрдХреВрд▓ рдирд╛рдо рдФрд░ рдореВрд▓реНрдп рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рдЖрдИрдбреА рд░рдЦрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдЯреЗрдХреНрд╕реНрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рд╣реЛрд╕реНрдЯрдирд╛рдо рдХреЗ рд╕рд╛рде рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреНрд╡реЗрд░реА рдФрд░ рдорд╛рди рдХреЗ рд░реВрдк рдореЗрдВ рдЖрдИрдбреА:

SELECT hostname AS __text, id AS __value FROM my_host

http://docs.grafana.org/features/datasources/mysql/#query -variable

рдореИрдВ рдХрд╕реНрдЯрдо рдЪрд░ рд╣реЛрдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреВрдВрдЧрд╛:

[{
        "__text": "Server 1",
        "__value": 1
    },
    {
        "__text": "Server 2",
        "__value": 2
    }
]

рд╢рд╛рдпрдж рдирдпрд╛ рдкреНрд░рдХрд╛рд░ рдЬрд┐рд╕реЗ JSON рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ?

рдзрдиреНрдпрд╡рд╛рдж @ рдЬреЙрдиреАрдорд╛рдЪрд┐рди! рдЗрд╕рдиреЗ PostgreSQL рдбреЗрдЯрд╛рд╕реЛрд░реНрд╕ рдХреЗ рд╕рд╛рде рдЦреВрдмрд╕реВрд░рддреА рд╕реЗ рдХрд╛рдо рдХрд┐рдпрд╛ред

рдЗрд╕рдХреЗ рд╡рд┐рд╕реНрддрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ, рдХреНрдпрд╛ рдЪрд░ рдХреЗ __text рдЕрдиреБрднрд╛рдЧ рдХреЛ рдкреБрдирдГ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рд╣реИ? рдпрд╣ рд░реЗрдЦрд╛рдВрдХрди рджреЛрд╣рд░рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧрд╛ред

рдЕрд░реЗ @MGinshe , рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ (рдкрд╛рда рдХрд╛ рдЙрдкрдпреЛрдЧ рдореВрд▓реНрдп рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ):

image

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдЗрд╕ рдмрдЧ рдХреЗ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕рдВрджрд░реНрдн рдХреЛ рдЧрд▓рдд рд╕рдордЭрд╛, рдиреАрдЪреЗ рджреА рдЧрдИ рдЯрд┐рдкреНрдкрдгреА рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░реЗрдВ, рдпрд╣ #9292 . рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рдерд╛

@torkelo @nmaniwa

https://github.com/grafana/grafana/pull/12609 рд▓рд╛рдЧреВ рдХрд░рдиреЗ рд▓рдЧрддрд╛ рд╣реИ рдЬреЛ рдЬреНрдпрд╛рджрд╛рддрд░ рд▓реЛрдЧ рдпрд╣рд╛рдВ рдкреВрдЫ рд░рд╣реЗ рд╣реИрдВ, рдХрд┐рд╕реА рднреА рдХрд╛рд░рдг рд╕реЗ рд╡рд╣ рдмрдВрдж рд╣реИ рдФрд░ рдХрднреА рд╡рд┐рд▓рдп рдирд╣реАрдВ рд╣реБрдЖ?

рдирд╣реАрдВ, рд╡рд╣ рдореБрджреНрджрд╛ рдХреБрдЫ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд▓рдЧ рд╣реИ, рдпрд╛ рдЖрдк рдЧрд▓рдд рдореБрджреНрджреЗ рд╕реЗ рдЬреБрдбрд╝реЗ рд╣реИрдВ?

рдЕрднреА рднреА рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдХреЛрдИ рдЦрдмрд░ рдирд╣реАрдВ рд╣реИ? рдЪрд▓реЛ, рд╣рдо 2018 рдореЗрдВ рд╣реИрдВ !! рдзрдиреНрдпрд╡рд╛рдж!

@dmayan рдЗрд╕рдХрд╛ рдЙрддреНрддрд░ @johnymachine рдиреЗ рджрд┐рдпрд╛ рдерд╛ред рдЖрдк рдЗрд╕рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдпрд╣ MySQL рдФрд░ PostgreSQL рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ:

рдПрдХ рдЕрдиреНрдп рд╡рд┐рдХрд▓реНрдк рдПрдХ рдХреНрд╡реЗрд░реА рд╣реИ рдЬреЛ рдПрдХ рдХреБрдВрдЬреА/рдорд╛рди рдЪрд░ рдмрдирд╛ рд╕рдХрддрд╛ рд╣реИред рдХреНрд╡реЗрд░реА рдХреЛ рджреЛ рдХреЙрд▓рдо рд▓реМрдЯрд╛рдиреЗ рдЪрд╛рд╣рд┐рдП рдЬрд┐рдирдХрд╛ рдирд╛рдо __text рдФрд░ __value рд╣реИред __text рдХреЙрд▓рдо рдХрд╛ рдорд╛рди рдЕрджреНрд╡рд┐рддреАрдп рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП (рдпрджрд┐ рдпрд╣ рдЕрджреНрд╡рд┐рддреАрдп рдирд╣реАрдВ рд╣реИ рддреЛ рдкрд╣рд▓реЗ рдорд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ)ред рдбреНрд░реЙрдкрдбрд╛рдЙрди рдХреЗ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдореЗрдВ рдПрдХ рдЯреЗрдХреНрд╕реНрдЯ рдФрд░ рдорд╛рди рд╣реЛрдЧрд╛ рдЬреЛ рдЖрдкрдХреЛ рдЯреЗрдХреНрд╕реНрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рдЕрдиреБрдХреВрд▓ рдирд╛рдо рдФрд░ рдореВрд▓реНрдп рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рдЖрдИрдбреА рд░рдЦрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдЯреЗрдХреНрд╕реНрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рд╣реЛрд╕реНрдЯрдирд╛рдо рдХреЗ рд╕рд╛рде рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреНрд╡реЗрд░реА рдФрд░ рдорд╛рди рдХреЗ рд░реВрдк рдореЗрдВ рдЖрдИрдбреА:

SELECT hostname AS __text, id AS __value FROM my_host

http://docs.grafana.org/features/datasources/mysql/#query -variable

рдореИрдВ рдХрд╕реНрдЯрдо рдЪрд░ рд╣реЛрдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреВрдВрдЧрд╛:

[{
      "__text": "Server 1",
      "__value": 1
  },
  {
      "__text": "Server 2",
      "__value": 2
  }
]

рд╢рд╛рдпрдж рдирдпрд╛ рдкреНрд░рдХрд╛рд░ рдЬрд┐рд╕реЗ JSON рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ?

рдореИрдВ MySQL рдФрд░ рди рд╣реА PostgreSQL рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддрд╛ред рдпрд╣ рдПрдХ рдЧреНрд░рд╛рдлрд╛рдирд╛ рд╡рд┐рд╢реЗрд╖рддрд╛ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред рдирд╣реАрдВ
рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХрд╛ рд╣реИрдХред

рдзрдиреНрдпрд╡рд╛рдж!

рдПрд▓ рдЬреНрдпреВред, 27 рдбреА рд╕рд┐рддрдореНрдмрд░ред рдбреЗ 2018 05:52, рдореБрд╣рдореНрдордж рд╣реЗрдВрдбреНрд░рд┐ рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди @github.com
рд╡рд┐рд╡рд░рдг:

@dmayan https://github.com/dmayan рдЗрд╕рдХрд╛ рдЙрддреНрддрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ред рдЖрдк рдЗрд╕рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдпрд╣ MySQL рдФрд░ PostgreSQL рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ:

рдПрдХ рдЕрдиреНрдп рд╡рд┐рдХрд▓реНрдк рдПрдХ рдХреНрд╡реЗрд░реА рд╣реИ рдЬреЛ рдПрдХ рдХреБрдВрдЬреА/рдорд╛рди рдЪрд░ рдмрдирд╛ рд╕рдХрддрд╛ рд╣реИред рдкреВрдЫрддрд╛рдЫ
рджреЛ рдХреЙрд▓рдо рд▓реМрдЯрд╛рдиреЗ рдЪрд╛рд╣рд┐рдП рдЬрд┐рдирдХрд╛ рдирд╛рдо __text рдФрд░ __value рд╣реИред рдЯреЗрдХреНрд╕реНрдЯ
рдХреЙрд▓рдо рдорд╛рди рдЕрджреНрд╡рд┐рддреАрдп рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП (рдпрджрд┐ рдпрд╣ рдЕрджреНрд╡рд┐рддреАрдп рдирд╣реАрдВ рд╣реИ рддреЛ рдкрд╣рд▓рд╛ рдорд╛рди рд╣реИ
рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛)ред рдбреНрд░реЙрдкрдбрд╛рдЙрди рдХреЗ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдореЗрдВ рдПрдХ рдЯреЗрдХреНрд╕реНрдЯ рдФрд░ рдорд╛рди рд╣реЛрдЧрд╛ рдЬреЛ рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ
рдЖрдкрдХреЗ рдкрд╛рд╕ рдЯреЗрдХреНрд╕реНрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рджреЛрд╕реНрддрд╛рдирд╛ рдирд╛рдо рдФрд░ рдореВрд▓реНрдп рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рдЖрдИрдбреА рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдПрдХ рдЙрджрд╛рд╣рд░рдг
рдЯреЗрдХреНрд╕реНрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рд╣реЛрд╕реНрдЯрдирд╛рдо рдХреЗ рд╕рд╛рде рдХреНрд╡реЗрд░реА рдФрд░ рдорд╛рди рдХреЗ рд░реВрдк рдореЗрдВ рдЖрдИрдбреА:

рд╣реЛрд╕реНрдЯрдирд╛рдо AS __text, id AS __value my_host . рд╕реЗ рдЪреБрдиреЗрдВ

http://docs.grafana.org/features/datasources/mysql/#query -variable

рдореИрдВ рдХрд╕реНрдЯрдо рдЪрд░ рд╣реЛрдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреВрдВрдЧрд╛:

[{
"__text": "рд╕рд░реНрд╡рд░ 1",
"__рдорд╛рди": 1
},
{
"__text": "рд╕рд░реНрд╡рд░ 2",
"__рдорд╛рди": 2
}
]

рд╢рд╛рдпрдж рдирдпрд╛ рдкреНрд░рдХрд╛рд░ рдЬрд┐рд╕реЗ JSON рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ?

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/grafana/grafana/issues/1032#issuecomment-425011676 ,
рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/AWcYqEwxjXiXE07uM0ZG-A284TghEIR2ks5ufJG4gaJpZM4C4cjS
.

рдмрд╣реБрдд рдЙрдкрдпреЛрдЧреА рд╡рд┐рд╢реЗрд╖рддрд╛, рдпрджрд┐ рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ рдЙрдкрд▓рдмреНрдз рд╣реИ, рддреЛ рдпрд╣ рдпрд╣рд╛рдБ рд╣рдорд╛рд░реА рдмрд╣реБрдд рдорджрдж рдХрд░ рд╕рдХрддреА рд╣реИред рдХреНрдпреЛрдВрдХрд┐ рдЧреНрд░реЗрдлрд╛рдЗрдЯ рдЪреАрдиреА рдХреИрд░реЗрдХреНрдЯрд░ рдХреЛ рд╕реНрдЯреЛрд░ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ рдЧреНрд░реЗрдлрд╛рдЗрдЯ рдореЗрдВ рдЕрдВрдЧреНрд░реЗрдЬреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рд╣рдо рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЪреАрдиреА рдХреЛ рдЧреНрд░рд╛рдлрд╛рдирд╛ рдбреИрд╢рдмреЛрд░реНрдб рдореЗрдВ рджрд┐рдЦрд╛рдирд╛ рдЪрд╛рд╣реЗрдВрдЧреЗ, рдЗрд╕рд▓рд┐рдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХрд╛ рдЕрдиреБрднрд╡ рдХрд╛рдлреА рдмреЗрд╣рддрд░ рд╣реЛрдЧрд╛ред

рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ рд╢реАрдШреНрд░ рд╣реА рд╕рдЪ рд╣реЛ рдЬрд╛рдПрдЧреАред

рдореИрдВ рджреЛ рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЖрдИрдбреА-> рдирд╛рдо рдореИрдкрд┐рдВрдЧ рдХрд░рдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдм рд░рд╣рд╛ред рдкрд╣рд▓рд╛ рд╡реИрд░рд┐рдПрдмрд▓ рд╕рднреА рд╕рдВрднрд╛рд╡рд┐рдд рдЖрдИрдбреА (рдорд╛рди) рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рддрд╛ рд╣реИ рдЬрдмрдХрд┐ рджреВрд╕рд░рд╛ рд╡реИрд░рд┐рдПрдмрд▓ рдЖрдИрдбреА рд╕реЗ рдореЗрд▓ рдЦрд╛рдиреЗ рд╡рд╛рд▓реЗ рдирд╛рдо (рдбрд┐рд╕реНрдкреНрд▓реЗ рдЯреЗрдХреНрд╕реНрдЯ) рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдЖрджрд░реНрд╢ рдпрд╛ рд╕реБрдВрджрд░ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдЪрд╛рд▓ рд╣реИред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдиреЗрд╕реНрдЯреЗрдб рдЪрд░ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдФрд░ рдлрд┐рд░ рдЖрдк рдЪрд░ рдЪрдпрдирдХрд░реНрддрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЛ рдЫрд┐рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВред

+1

+1

@FdeFabricio рдЖрдкрдиреЗ InfluxDB рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИ? рдХреНрдпрд╛ рджреВрд╕рд░реЗ рдХреЛ рдмрджрд▓рддреЗ рд╕рдордп рдпрд╣ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдПрдХ рдорд╛рди рдЕрдкрдбреЗрдЯ рдХрд░рддрд╛ рд╣реИ? рдпрджрд┐ рдРрд╕рд╛ рд╣реИ рддреЛ рдЖрдк рдпрд╣ рдХреИрд╕реЗ рдХрд░рддреЗ рд╣реИрдВ?

@ рдмрд╛рд╕реА 1995

рдЖрдкрдиреЗ рдЗрдиреНрдлреНрд▓рдХреНрд╕рдбреАрдмреА рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛?

рд╣рд╛рдВ

рдХреНрдпрд╛ рджреВрд╕рд░реЗ рдХреЛ рдмрджрд▓рддреЗ рд╕рдордп рдпрд╣ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдПрдХ рдорд╛рди рдЕрдкрдбреЗрдЯ рдХрд░рддрд╛ рд╣реИ?

рд╣рд╛рдВ

рдпрджрд┐ рдРрд╕рд╛ рд╣реИ рддреЛ рдЖрдк рдпрд╣ рдХреИрд╕реЗ рдХрд░рддреЗ рд╣реИрдВ?

рдЖрдк рдПрдХ рдХреНрд╡реЗрд░реА рдкреНрд░рдХрд╛рд░ рдЪрд░ рдмрдирд╛рддреЗ рд╣реИрдВ рдЬреЛ рдЙрд╕ рдЖрдЗрдЯрдо рдХрд╛ рдЪрдпрди рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдкрд╣рд▓реЗ рд╕реЗ рдЪрдпрдирд┐рдд рдорд╛рди рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ (рдЙрджрд╛рд╣рд░рдг SELECT "name" FROM playlists WHERE ("id" =~ /^$playlist_id$/) ред рддреЛ рдЕрдм рдЖрдкрдХреЗ рдкрд╛рд╕ рджреЛ рдЪрд░ рд╣реЛрдВрдЧреЗ: рдПрдХ рдЖрдИрдбреА рдХреЗ рд╕рд╛рде рдФрд░ рджреВрд╕рд░рд╛ рдирд╛рдо рдХреЗ рд╕рд╛рдеред

@ bassie1995 @FdeFabricio рдЖрдк рдЗрд╕реЗ рдЙрд▓реНрдЯрд╛ рднреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

  • рдПрдХ рджреГрд╢реНрдпрдорд╛рди рдЪрд░, рдЬреЛ рдЖрдкрдХреЛ рдкреНрд▓реЗрд▓рд┐рд╕реНрдЯ рдХреЗ рдирд╛рдо (рдпрд╛рдиреА рдЧрд░реНрд▓ рдкрд╛рд╡рд░) рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рджреЗрддрд╛ рд╣реИ
  • рдПрдХ рдЫрд┐рдкрд╛ рд╣реБрдЖ рдЪрд░, рдЬреЛ рдирд╛рдо рд╕реЗ рдкреНрд▓реЗрд▓рд┐рд╕реНрдЯ рдЖрдИрдбреА рдвреВрдВрдврддрд╛ рд╣реИ (рдХреБрдЫ рдЗрд╕ рддрд░рд╣ SELECT "id" FROM playlists WHERE ("name" =~ /^$playlist_name$/) )

рдЗрд╕ рддрд░рд╣, рдЖрдкрдХреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкреНрд▓реЗрд▓рд┐рд╕реНрдЯ рдХреЛ рдЙрд╕рдХреЗ рдирд╛рдо рд╕реЗ рдЪреБрдирдиреЗ рдХрд╛ рд╡рд┐рдХрд▓реНрдк рджреЗрдЦрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдкреНрд▓реЗрд▓рд┐рд╕реНрдЯ рдЖрдИрдбреА рдЫрд┐рдкреА рд╣реБрдИ рд╣реИред рдкреНрд▓реЗрд▓рд┐рд╕реНрдЯ рдЖрдЗрдЯрдо рдЖрджрд┐ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдк рдЕрднреА рднреА рдкреНрд▓реЗрд▓рд┐рд╕реНрдЯ рдЖрдИрдбреА рдХреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдХ рд░реВрдк рд╕реЗ рдПрдХреНрд╕реЗрд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

PostgreSQL/MySQL рдбреЗрдЯрд╛ рд╕реНрд░реЛрдд рд╕реЗ __name рдФрд░ __value рд╕рд┐рдВрдЯреИрдХреНрд╕ рдЕрднреА рднреА рдЖрджрд░реНрд╢ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдХрд┐рд╕реА рднреА рдЖрдИрдбреА-> рдирд╛рдо рдЕрд╕реНрдкрд╖реНрдЯрддрд╛ рдХреЛ рд░реЛрдХрддрд╛ рд╣реИ, рдФрд░ рдЖрд╡рд╢реНрдпрдХ рдбреЗрдЯрд╛рдмреЗрд╕ рдкреНрд░рд╢реНрдиреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдХрдо рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдЖрдИрдПрдордУ рдХреА рдореВрд▓ рд╡рд┐рд╢реЗрд╖рддрд╛ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред

рдореБрдЭреЗ рдКрдкрд░ @johnymachine рдХреА рдЯрд┐рдкреНрдкрдгреА рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдПрдХ рдФрд░ рд╕рдорд╛рдзрд╛рди рдорд┐рд▓рд╛ред рдХреБрдЫ рдбреЗрдЯрд╛ рд╕реНрд░реЛрддреЛрдВ рдореЗрдВ рдЗрд╕рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рд╣реИред рдпрджрд┐ рдпрд╣ рдЖрдкрдХреЗ рдбреЗрдЯрд╛ рд╕реНрд░реЛрдд рдореЗрдВ рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИ, рддреЛ рдЖрдк рдПрдХ MySQL рдбреЗрдЯрд╛рдмреЗрд╕ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ, рд╡рд╣рд╛рдВ рдбреЗрдЯрд╛ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ __value рдФрд░ __text рд╡рд╛рдкрд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдХреНрд╡реЗрд░реА рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдЕрдЧрд░ рдбреЗрдЯрд╛ рд╕реНрдерд┐рд░ рд╣реИ, рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдХреА рд╕реНрдерд┐рддрд┐ (рднреМрдЧреЛрд▓рд┐рдХ рд╕реНрдерд┐рддрд┐) рдореЗрдВред рдХрд┐рд╕реА рднреА рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд▓рд┐рдП рдЬреЛ рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рдХрд╕реНрдЯрдо рдХреЗ рд░реВрдк рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдЪрд░ рдХреЗ рд▓рд┐рдП рдЪрд╛рд╣рддрд╛ рд╣реИ рддреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдЕрдЪреНрдЫрд╛ рдХрд╛рдордХрд╛рдЬ рд╣реИ рдФрд░ рд╕рдВрднрд╡рддрдГ рдПрдХ рдмреЗрд╣рддрд░ рд╕рдорд╛рдзрд╛рди рд╣реИред рдпрд╣ рд╕рднреА рдкрд░рд┐рд╡рд░реНрддрдиреАрдп рд╕реВрдЪрд┐рдпреЛрдВ рдХреЛ 1 рд╕реНрдерд╛рди рдкрд░ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдФрд░ рдЕрдзрд┐рдХ рдЖрд╕рд╛рдиреА рд╕реЗ рдмрджрд▓рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдХреЗрд╡рд▓ рдирдХрд╛рд░рд╛рддреНрдордХ рдкрдХреНрд╖ рдпрд╣ рд╣реИ рдХрд┐ рдЗрд╕реЗ MySQL рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

TSDB рд╕реЗ рд╕рд┐рдВрдЧрд▓рдЪрд░ AS __value, рд╢реЙрд░реНрдЯрдирд╛рдо AS __text рдЪреБрдиреЗрдВред State

рдореБрдЭреЗ рдЗрд╕ рд╕рдорд╛рдзрд╛рди рдХреЛ рдмрд╛рд░-рдмрд╛рд░ рдЧреНрд░рд╛рдлрд╝, рджреЛрд╣рд░рд╛рдИ рдЧрдИ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдпрд╣ рднреА рдХрд┐ рдпрджрд┐ рдЪрд░ рдореЗрдВ рдмрд╣реБ-рдЪрдпрди рд╣реИред рдЗрди рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ "рдЧрд░реНрд▓ рдкрд╛рд╡рд░" рджрд┐рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП 2 рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдЙрджрд╛рд╣рд░рдг рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред

рдореИрдВ рдмрд╕ рдЙрд╕ рдореБрджреНрджреЗ рд╕реЗ рдЬреВрдЭ рд░рд╣рд╛ рдерд╛ рдФрд░ рдХреБрдЫ рд╣рдж рддрдХ рд╣реИрдХрд┐рдВрд╢ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдкрд╛рдпрд╛ ...
рдореБрдЭреЗ рдПрдХ рд╣реИрд╢ рдЪрд╛рд╣рд┐рдП рдерд╛, рдХрд┐ рдкрд░реНрд▓ рдиреЛрдЯреЗрд╢рди рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ:
Perl %units = ( '╬╝Sv/h' => 1.0, 'mrem/h' => 0.1 );
рдореИрдВрдиреЗ рдПрдХ рдбреИрд╢рдмреЛрд░реНрдб рд╡реИрд░рд┐рдПрдмрд▓ Type : Custom , Values separated by comma : mrem/h, ╬╝Sv/h рдмрдирд╛рдпрд╛ рдФрд░ рдлрд┐рд░ JSON Model рдХреЛ рдЗрд╕ рддрд░рд╣ рд╕рдВрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛:
JSON { "allValue": null, "current": { "tags": [], "text": "mrem/h", "value": "0.1" }, "hide": 0, "includeAll": false, "label": null, "multi": false, "name": "units", "options": [ { "selected": true, "text": "mrem/h", "value": "0.1" }, { "selected": false, "text": "╬╝Sv/h", "value": "1.0" } ], "query": "mrem/h, ╬╝Sv/h", "skipUrlSync": false, "type": "custom" }

рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ (рдХреБрдЫ рд╕рдордп рдХреЗ рд▓рд┐рдП), рдЬреАрдпреВрдЖрдИ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдбреИрд╢рдмреЛрд░реНрдб рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рд╕реЗ рдпрд╣ рд╡рд╛рдкрд╕ рдЧреИрд░-рдХрд╛рд░реНрдпрд╢реАрд▓ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдмрджрд▓ рдЬрд╛рддрд╛ рд╣реИ :-|

рдЗрд╕рдХреЗ рдЖрд╕рдкрд╛рд╕ рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдЕрдиреНрдп рд╡рд┐рдХрд▓реНрдк рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдХреЛрдИ рдЕрдиреНрдп рд╕рд┐рд╕реНрдЯрдо рд╣реИ рдЬреЛ рдбреЗрдЯрд╛ рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддрд╛ рд╣реИ:

рдПрдХ JSON рдбреЗрдЯрд╛рд╕реЛрд░реНрд╕ рдкреНрд▓рдЧрдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рдореИрдВ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ: https://grafana.com/plugins/simpod-json-datasource

рдЖрд╡рд╢реНрдпрдХ рдбреЗрдЯрд╛ рд╡рд╛рд▓реЗ рдХрд┐рд╕реА рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдХреЗрд╡рд▓ / рд╕реНрд╡рд╛рд╕реНрдереНрдп-рдЬрд╛рдВрдЪ рд╕рдорд╛рдкрди рдмрд┐рдВрджреБ рдФрд░ /search рд╕рдорд╛рдкрди рдмрд┐рдВрджреБ рд▓рд╛рдЧреВ рдХрд░реЗрдВред /search рдПрдВрдбрдкреЙрдЗрдВрдЯ рдХреЛ JSON рд▓реМрдЯрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ: [{ "text": "A Human Name", "value": "123456" }, ...] ред text рдкреНрд░реЙрдкрд░реНрдЯреА рд╡рд╣реА рд╣реЛрдЧреА рдЬреЛ рд╡реЗрд░рд┐рдПрдмрд▓ рд╕рд┐рд▓реЗрдХреНрдЯ рдбреНрд░реЙрдк рдбрд╛рдЙрди рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрддреА рд╣реИ рдФрд░ value рд╡рд╣ рд╣реЛрдЧреА рдЬреЛ рдореЗрдЯреНрд░рд┐рдХреНрд╕ рдХреНрд╡реЗрд░реА рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рддреА рд╣реИред

рдлрд┐рд░ рдЗрд╕ рдирдП рдбреЗрдЯрд╛ рд╕реНрд░реЛрдд рдХреЗ рд╡рд┐рд░реБрджреНрдз рдХреНрд╡реЗрд░реА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рдбреИрд╢рдмреЛрд░реНрдб рд╡реИрд░рд┐рдПрдмрд▓ рдХреЛ рд╕реЗрдЯрдЕрдк рдХрд░реЗрдВ, рдпрд╣ рдереЛрдбрд╝реЗ рд╣реИрдХреА рд╣реИ рд▓реЗрдХрд┐рди рдЖрдк рдмреИрдХрдПрдВрдб рдХреЛ рдпрд╣ рдмрддрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛ рд╕реНрд░реЛрдд рдХреЗ рд▓рд┐рдП target рдлрд╝реАрд▓реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдРрд╕реЗ рдХрдИ рдбреЗрдЯрд╛рд╕реЗрдЯ рд╣реИрдВ рдЬрд┐рдирдХреЗ рд╕рд╛рде рдЖрдк рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рддреЛ рдЗрд╕реЗ рд╡рд╛рдкрд╕ рдХреНрдпрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдЗрд╕ рдкрд░ +1ред рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдРрд╕рд╛ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рдЪрд╛рд╣реВрдВрдЧрд╛, рд▓реЗрдХрд┐рди рд╡рд╣ рдЬреЛ рдмреИрдХрдПрдВрдб-рдирд┐рд░реНрднрд░ рдирд╣реАрдВ рдерд╛ (рд╣рдо рдЧреНрд░реЗрдлрд╛рдЗрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ)ред

+1 рдХреЛрдИ рдХрд╛рдордХрд╛рдЬреА рд╕рдорд╛рдзрд╛рди?

@ BlackRider97 рдХреГрдкрдпрд╛ рдКрдкрд░ рджреА рдЧрдИ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВ - PostgreSQL (рдФрд░ рд╢рд╛рдпрдж MySQL, MSSQL, рдЖрджрд┐) рдХреЗ рд▓рд┐рдП рдХрдИ рдХрд╛рд░реНрдп рд╕рдорд╛рдзрд╛рди рд╣реИрдВред

рд╕рдорд╛рдзрд╛рди 1: https://github.com/grafana/grafana/issues/1032#issuecomment -409124505

рд╕рдорд╛рдзрд╛рди 2: https://github.com/grafana/grafana/issues/1032#issuecomment -453242766

@thinrope рд╕реЗ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдХреЛ рдареАрдХ рд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рд╕реБрдВрджрд░ рдлрд┐рдХреНрд╕ рдЗрдореНрд╣реЛ рд╣реЛрдЧрд╛ред
рдпрджрд┐ рд╣рдо рдПрдХ рдХрд╕реНрдЯрдо рдЪрд░ рдореЗрдВ JSON рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╛ рдПрдХ рдЪрд░ рдкреНрд░рдХрд╛рд░ "JSON" рд╣реИ, рддреЛ рд╣рдо рдЗрд╕реЗ рд╣реИрдХ рдХреЗ рдмрд┐рдирд╛ рд╣рд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдореБрдЭреЗ рдХреЛрдИ рдХрдорд┐рдпрд╛рдВ рдирд╣реАрдВ рджрд┐рдЦрддреА рд╣реИрдВред

+1 рдЗрд╕ рдкрд░ рдХреЛрдИ рдЕрдкрдбреЗрдЯ?

+1

+1

рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдПрдХ рд╡рд┐рд╢реЗрд╖рддрд╛ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред
рдореИрдВ рд╣реЛрд╕реНрдЯрдирд╛рдо рдкрд░ рд░реЗрдЧреЗрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХреБрдЫ рдореЗрдЬрдмрд╛рдиреЛрдВ рдХреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВред рдЪреВрдВрдХрд┐ рдореЗрд░реЗ рд╕рд░реНрд╡рд░ рд╣реЛрд╕реНрдЯрдирд╛рдо рдореЗрдВ рдкреИрдЯрд░реНрди рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рддреЗ рд╣реИрдВ, рдореЗрд░реЗ рдкрд╛рд╕ рдХрд┐рд╕реА рджрд┐рдП рдЧрдП рд╕рдореВрд╣ рдХреЗ рд╕рднреА рд╕рд░реНрд╡рд░реЛрдВ рдХреА рд╕реВрдЪреА рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд░реЗрдЧреЗрдХреНрд╕ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдмрджрд╕реВрд░рдд рд░реЗрдЧреЗрдХреНрд╕рдкреА рджрд┐рдЦрд╛рдиреЗ рдХреЗ рдмрдЬрд╛рдп, рдореИрдВ рдбреНрд░реЙрдкрдбрд╛рдЙрди рдореЗрдиреВ рдХреЗ рд▓реЗрдмрд▓ рдХреЗ рд░реВрдк рдореЗрдВ "рд╕рдореВрд╣ рдП рдХреЗ рд╕рд░реНрд╡рд░" рдЬреИрд╕реЗ рдПрдХ рд╕реБрдВрджрд░ рдирд╛рдо рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред

рдЗрд╕реЗ рдХрд╕реНрдЯрдо рдорд╛рди рдореЗрдВ рджрд░реНрдЬ рдХрд░рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рдЗрддрдирд╛ рдЖрд╕рд╛рди рд╣реЛ рд╕рдХрддрд╛ рд╣реИ:
label1:value1, value2, label3:value3, label5:value5

рд▓реЗрдмрд▓ рд╡реИрдХрд▓реНрдкрд┐рдХ рд╣реЛрдЧрд╛ред рдпрджрд┐ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдореЗрдВ : рдореМрдЬреВрдж рд╣реИ, рддреЛ : рд╕реЗ рдкрд╣рд▓реЗ рд╕рдм рдХреБрдЫ рд▓реЗрдмрд▓ рд╣реИ рдФрд░ рдмрд╛рдж рдореЗрдВ рд╕рдм рдХреБрдЫ рдореВрд▓реНрдп рд╣реИред
рд╣рдорд╛рд░реЗ рдкрд╛рд╕ : рд╕реЗ рдмрдЪрдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдпрджрд┐ рд╣рдореЗрдВ рд▓реЗрдмрд▓ рдирд╛рдо рдпрд╛ рдореВрд▓реНрдп рдореЗрдВ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рд╣рдо , рд╡рд░реНрдг рдХреЗ рд▓рд┐рдП рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдЗрд╕рдХреЗ рдЖрд╕рдкрд╛рд╕ рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдЕрдиреНрдп рд╡рд┐рдХрд▓реНрдк рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдХреЛрдИ рдЕрдиреНрдп рд╕рд┐рд╕реНрдЯрдо рд╣реИ рдЬреЛ рдбреЗрдЯрд╛ рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддрд╛ рд╣реИ:

рдПрдХ JSON рдбреЗрдЯрд╛рд╕реЛрд░реНрд╕ рдкреНрд▓рдЧрдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рдореИрдВ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ: https://grafana.com/plugins/simpod-json-datasource

рдЖрд╡рд╢реНрдпрдХ рдбреЗрдЯрд╛ рд╡рд╛рд▓реЗ рдХрд┐рд╕реА рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдХреЗрд╡рд▓ / рд╕реНрд╡рд╛рд╕реНрдереНрдп-рдЬрд╛рдВрдЪ рд╕рдорд╛рдкрди рдмрд┐рдВрджреБ рдФрд░ /search рд╕рдорд╛рдкрди рдмрд┐рдВрджреБ рд▓рд╛рдЧреВ рдХрд░реЗрдВред /search рдПрдВрдбрдкреЙрдЗрдВрдЯ рдХреЛ JSON рд▓реМрдЯрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ: [{ "text": "A Human Name", "value": "123456" }, ...] ред text рдкреНрд░реЙрдкрд░реНрдЯреА рд╡рд╣реА рд╣реЛрдЧреА рдЬреЛ рд╡реЗрд░рд┐рдПрдмрд▓ рд╕рд┐рд▓реЗрдХреНрдЯ рдбреНрд░реЙрдк рдбрд╛рдЙрди рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрддреА рд╣реИ рдФрд░ value рд╡рд╣ рд╣реЛрдЧреА рдЬреЛ рдореЗрдЯреНрд░рд┐рдХреНрд╕ рдХреНрд╡реЗрд░реА рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рддреА рд╣реИред

рдлрд┐рд░ рдЗрд╕ рдирдП рдбреЗрдЯрд╛ рд╕реНрд░реЛрдд рдХреЗ рд╡рд┐рд░реБрджреНрдз рдХреНрд╡реЗрд░реА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рдбреИрд╢рдмреЛрд░реНрдб рд╡реИрд░рд┐рдПрдмрд▓ рдХреЛ рд╕реЗрдЯрдЕрдк рдХрд░реЗрдВ, рдпрд╣ рдереЛрдбрд╝реЗ рд╣реИрдХреА рд╣реИ рд▓реЗрдХрд┐рди рдЖрдк рдмреИрдХрдПрдВрдб рдХреЛ рдпрд╣ рдмрддрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛ рд╕реНрд░реЛрдд рдХреЗ рд▓рд┐рдП target рдлрд╝реАрд▓реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдРрд╕реЗ рдХрдИ рдбреЗрдЯрд╛рд╕реЗрдЯ рд╣реИрдВ рдЬрд┐рдирдХреЗ рд╕рд╛рде рдЖрдк рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рддреЛ рдЗрд╕реЗ рд╡рд╛рдкрд╕ рдХреНрдпрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдореИрдВрдиреЗ рдпрд╣ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд┐рдпрд╛ рдФрд░ рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рдкреНрд░рд╡реГрддреНрддрд┐ (рдХрд┐рдВрд╡рджрдВрддреА) рдХреЛ рд▓реЗрдмрд▓ рдХрд░рдиреЗ рдкрд░ рдлрдВрд╕ рдЧрдпрд╛ рд╣реВрдВ ... рдореБрдЭреЗ рдпрд╛ рддреЛ рдЖрдИрдбреА (рд╕рдВрдЦреНрдпрд╛) рдорд┐рд▓рддреА рд╣реИ рдпрд╛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ рдпрд╛ рдХреБрдЫ рдЕрдиреНрдп рдЧреИрд░-рд╕рдордЭрджрд╛рд░ рд╣реЛрддреА рд╣реИред
рдХреНрдпрд╛ рдЖрдк рд╕рд▓рд╛рд╣ рджреЗ рд╕рдХрддреЗ рд╣реИрдВ?

рдПрдо

+1

рдореИрдВ рдЕрдм рдЕрдкрдиреА рдХрдВрдкрдиреА рдХреЗ рдЧреНрд░рд╛рдлрд╛рдирд╛ рдореЗрдВ @mbell697 рджреНрд╡рд╛рд░рд╛ рд╡рд░реНрдгрд┐рдд JSON-hack рдХрд╛ рднреА рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рд▓реЗрдХрд┐рди рдПрдХ рдЕрдЬреАрдм рд░реЗрдЧреЗрдХреНрд╕ рд╕рдорд╕реНрдпрд╛ IMHO рдкреНрд░рддреАрдд рд╣реЛрддреА рд╣реИред

рдореИрдВрдиреЗ рдПрдХ рдЫреЛрдЯрд╛ рдкрд╛рдпрдерди рдлреНрд▓рд╛рд╕реНрдХ рдРрдк рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рд╣реИ рдЬреЛ рдореБрдЭреЗ рдЧреНрд░реЗрдлрд╛рдЗрдЯ рдкреНрд░рд╢реНрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╕рдореВрд╣ рдкреНрд░рджрд╛рди рдХрд░ рд░рд╣рд╛ рд╣реИ, рдореЗрд░рд╛ рдЦреЛрдЬ рдбреЗрдЯрд╛ рдЬреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИ

@app.route('/search', methods=['POST'])
def search():
    data = [
        {"text": "fs-servers", "value": "{FS-server-1,FS-server-2,FS-server-3}"},
        {"text": "db-a-servers", "value": "{db-server-1,}"},
        {"text": "db-b-servers", "value": "{db-server-2,db-server-3}"}
    ]
    return jsonify(data)

рддреЛ рдбреИрд╢рдмреЛрд░реНрдб рдореЗрдВ рдореИрдВрдиреЗ рдЬреЗрд╕рди-рд╕реНрд░реЛрдд рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ "рд╕рдореВрд╣" рдирд╛рдордХ рдПрдХ рдХреНрд╡реЗрд░реА рд╡реИрд░рд┐рдПрдмрд▓ рдмрдирд╛рдпрд╛ рдФрд░ рдлрд┐рд░ /fs-.*/ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд░реЗрдЧреЗрдХреНрд╕-рдлрд╝реАрд▓реНрдб рдХреЗ рд╕рд╛рде "рдПрдлрдПрд╕-рд╕рд░реНрд╡рд░" рд╕рдореВрд╣ рдХреЗ рд▓рд┐рдП рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ - рд▓реЗрдХрд┐рди рдпрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ рдЕрдкреЗрдХреНрд╖рд┐рдд рдерд╛ - рдЪрд╛рд░реЛрдВ рдУрд░ рдЭреБрдХрд╛рд╡ рдХреЗ рдмрд╛рдж рдореИрдВрдиреЗ рдорд╛рдирд╛ рдХрд┐ рд░реЗрдЧреЗрдХреНрд╕ рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ "рдорд╛рди" рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИ - рди рдХрд┐ "рдЯреЗрдХреНрд╕реНрдЯ" -рдлреАрд▓реНрдб рдкрд░ред рдХреНрдпрд╛ рдХрд┐рд╕реА рдХреЗ рдкрд╛рд╕ рд╢рд╛рдпрдж рдХреБрдЫ рдХрд╛рдордХрд╛рдЬ рдпрд╛ рд╡рд┐рдЪрд╛рд░ рд╣реИ?

+1

+1

рдЗрд╕рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдкрд░ рдореЗрд░рд╛ рд╡рд┐рдЪрд╛рд░:

рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдореИрдВ рдПрдХ рд╣реА рдЪреАрдЬрд╝ рдХреЗ рджреЛ рд░реВрдкреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрддрд╛ рд╣реВрдБред рд╣рдо рдЬреЛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рд╡рд╣ рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рдЙрдкрдирд╛рдо рд╣реИред рджреЛрдиреЛрдВ рд╣реА рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рдбреИрд╢рдмреЛрд░реНрдб рдХрд╛ рдорд╛рд▓рд┐рдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдПрдХ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рд╡реИрд░рд┐рдПрдмрд▓ рд╕реВрдЪреА рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ, рдЬреЛ рдЕрдВрддрд┐рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд▓рд┐рдП рд╕рдордЭрдиреЗ рдореЗрдВ рдЖрд╕рд╛рди рд╣реЛред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдХреНрд╡реЗрд░реА рдореЗрдВ рдкреНрд░рдпреБрдХреНрдд рдореВрд▓реНрдп рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдореВрд▓реНрдп рд╣реИред

рдЙрджрд╛рд╣рд░рдг 1 - рд╕рд░рд▓ рдПрдХ рд╕реЗ рдПрдХ рдирд╛рдо рд░реВрдкрд╛рдВрддрд░рдгред рддреЛ рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рджреЗрд╢ рдХреЛрдб рд╣реИрдВ рдЬреЛ рдореАрдЯреНрд░рд┐рдХ рдорд╛рдиреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рдХрд╛рд╢рд┐рдд рд╣реЛрддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдкрддрд╛ рд╣реИ рдХрд┐ рдХреЛрдИ рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдХреЛрдб рдпрд╛рдж рд░рдЦрддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП рд╣рдо "рдпреВрдПрд╕" рдпрд╛ "рдХрдирд╛рдбрд╛" рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ

{"рдЕрдореЗрд░рд┐рдХрд╛" == "01"}
{"рдХрдирд╛рдбрд╛" == "02"}

рдпрджрд┐ "рдХрдирд╛рдбрд╛" рдХрд╛ рдЪрдпрди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ рдХрд┐рд╕реА рднреА рдХреНрд╡реЗрд░реА рдХреЛ рджрд┐рдпрд╛ рдЧрдпрд╛ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рд╡реИрд░рд┐рдПрдмрд▓ рдорд╛рди "02" рд╣реИ

рдЙрджрд╛рд╣рд░рдг 2 - рдПрдХ рд╕реЗ рдЕрдиреЗрдХ рдорд╛рдирдЪрд┐рддреНрд░рдг рд╣реИред рдЖрдВрддрд░рд┐рдХ рд░реВрдк рд╕реЗ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдкрд░рд┐рдирд┐рдпреЛрдЬрди рдХреЗ рд▓рд┐рдП рдЪрд░рдг рд╣реИрдВ, рдЬреИрд╕реЗ s0, s1, s2, s3, s4ред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЕрдВрддрд┐рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрд╕реЗ "рджреЗрд╡, рдмреАрдЯрд╛, рдЙрддреНрдкрд╛рдж" рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
рдЗрд╕рд▓рд┐рдП рд╡реЗ рдЙрдиреНрд╣реЗрдВ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдореИрдк рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ:

{ "рджреЗрд╡" == ["s1"]}
{"рдмреАрдЯрд╛" == ["s2", "s3"]}
{ "рдЙрддреНрдкрд╛рдж" == ["s4", "s5", "s6"]} рдпрд╛ рдмреЗрд╣рддрд░ рдЕрднреА рддрдХ "рдЙрддреНрдкрд╛рдж" == рдПрд╕ [456]

рддреЛ рдЕрдЧрд░ "рдкреНрд░реЛрдб" рдЪреБрдирд╛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ "рдПрд╕ 4, рдПрд╕ 5, рдПрд╕ 6" рдХреНрд╡реЗрд░реА рдХреЛ рдкрд╛рд╕ рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ

рдПрдХ рдХреНрд╡реЗрд░реА рдкрд░рд┐рдкреНрд░реЗрдХреНрд╖реНрдп рд╕реЗ (рдЙрджрд╛рд╣рд░рдг 2 рд▓реЗрддреЗ рд╣реБрдП) рдЬрд╣рд╛рдВ рдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдирд╛рдо рд╕реНрдЯреЗрдЬрд╡рд░ рд╣реИ
рдФрд░ рдореАрдЯреНрд░рд┐рдХ рдЯреИрдЧ рдХрд╛ рдирд╛рдо рдЪрд░рдг рд╣реИ:

рд╣рдореЗрдВ рдХреЙрд▓ рдХреА рддрд░рд╣ aliasBy() рдХреА рдЗрддрдиреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рджрд┐рдЦрддреА рд╣реИ, рд▓реЗрдХрд┐рди рдФрд░ рдЪреАрдЬреЗрдВ рдЬреИрд╕реЗ:
рд╕реНрдЯреЗрдЬ = ~ $ {рд╕реНрдЯреЗрдЬ рд╡рд╛рд░. рдорд╛рди: рд░реЗрдЧреЗрдХреНрд╕ }
рдЙрдкрдирд╛рдо($stageVar.label)

рдЪрдпрдирд┐рдд рдЯреЗрдореНрдкрд▓реЗрдЯ рдЪрд░ рдорд╛рдиреЛрдВ рджреНрд╡рд╛рд░рд╛ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╕рдВрднрд╡ рд╣реИ рдХрд┐ рдХреЛрдИ рд╡реНрдпрдХреНрддрд┐ рдЗрд╕реЗ рдЙрдкрдирд╛рдо рджреНрд╡рд╛рд░рд╛ () рдлрд╝рдВрдХреНрд╢рди рдХреА рддрд░рд╣ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрджрд┐ рдпрд╣ рдПрдХ рд╕рд┐рдВрдЯреИрдХреНрд╕ рддреНрд░реБрдЯрд┐ рд╣реИ рдЬреЛ рдареАрдХ рд╣реИред рдореИрдВ рдЙрдореНрдореАрдж рдирд╣реАрдВ рдХрд░рддрд╛ рдХрд┐ рдЖрдк рдХрд┐рд╕реА рдРрд╕реЗ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдкрд╛рд╕ рдХрд┐рдП рдЧрдП рд╕рд░рдгреА рдХреЗ рд░реВрдкрд╛рдВрддрд░рдг рдХреЛ рдЬрд╛рджреБрдИ рд░реВрдк рд╕реЗ рдареАрдХ рдХрд░реЗрдВрдЧреЗ рдЬреЛ рдПрдХ рдорд╛рди рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░рддрд╛ рд╣реИред

рдореИрдкрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рд╕реНрдерд┐рд░ рд░реВрдк рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред
рдЖрджрд░реНрд╢ рд░реВрдк рд╕реЗ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЙрди рдорд╛рдиреЛрдВ рдХреА рд╕реВрдЪреА рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдордЯреА рд╕реЗ рдПрдХ рдкреНрд░рд╢реНрди рд╣реЛрдЧрд╛ рдЬрд┐рдиреНрд╣реЗрдВ рдореИрдк рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП "01", "02", "03" рдФрд░ рдлрд┐рд░ рдЖрдкрдХреЗ рдкрд╛рд╕ рдореИрдкрд┐рдВрдЧ/рдЙрдкрдирд╛рдо рдЬреЛрдбрд╝рдирд╛ рдЖрд╕рд╛рди рд╣реЛрдЧрд╛ред рдореИрдк рди рдХрд┐рдП рдЧрдП рдорд╛рди "рдбрд┐рдлрд╝реЙрд▓реНрдЯ" рдмрдХреЗрдЯ рдореЗрдВ рдЬрд╛рдПрдВрдЧреЗред

+1

+1

рдореБрдЭреЗ рдмрд╣реБрдд рдЖрд╢реНрдЪрд░реНрдп рд╣реИ рдХрд┐ рдЗрд╕реЗ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ - рдореИрдВрдиреЗ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдореЗрдВ рдХрд╛рдлреА рд╕рдордп рдмрд┐рддрд╛рдпрд╛ рдХрд┐ рдпрд╣ "рд╕реНрдкрд╖реНрдЯ" рдЪреАрдЬрд╝ рдХреИрд╕реЗ рд╣реЛрддреА рд╣реИ рдФрд░ рдЕрдВрддрддрдГ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдореЗрд░рд╛ рд░рд╛рд╕реНрддрд╛ рдорд┐рд▓ рдЧрдпрд╛ рдХрд┐ рдпрд╣ рдЕрд╕реНрддрд┐рддреНрд╡ рдореЗрдВ рдирд╣реАрдВ рд╣реИред

рдКрдкрд░ рдХреБрдЫ рд▓реЛрдЧреЛрдВ рджреНрд╡рд╛рд░рд╛ рд╡рд░реНрдгрд┐рдд рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рд╢рд╛рдирджрд╛рд░ рд╣реЛрдЧреАред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдореИрдВ рдПрдХ рдЕрд▓реНрдкрдХрд╛рд▓рд┐рдХ рд╣реИрдХ (рдпрд╛ рд╕реНрдерд╛рдпреА "рдЖрд╕рд╛рди" рдореЙрдбрд▓) рд╕реЗ рднреА рдЦреБрд╢ рд╣реВрдВ рдЬреЛ "рдХрд╕реНрдЯрдо" рдлрд╝реАрд▓реНрдб рдХрд╛ рдПрдХ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рд╕рдВрд╕реНрдХрд░рдг рд╣реИ, рдЬреЛ рдХрд┐ рдПрдХрд▓ рдпрд╛ рдПрдХрд╛рдзрд┐рдХ рд╡рд┐рдХрд▓реНрдк рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЗ рд▓рд┐рдП рд╕реНрдерд┐рд░ рд░реВрдк рд╕реЗ рдореИрдк рдХрд┐рдП рдЧрдП рд╡рд┐рдХрд▓реНрдк рд╣реИрдВред

рд╣рдорд╛рд░рд╛ рдЙрджрд╛рд╣рд░рдг рджреЗрд╢ рдХреЛрдб рд╣реИред рд╣рдо рдЕрдХреНрд╕рд░ рднреМрдЧреЛрд▓рд┐рдХ рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреЗ рд╕рдореВрд╣реЛрдВ рдХреЛ рджреЗрдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рджреЗрд╢ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдирд╣реАрдВред рд▓реЗрдХрд┐рди рд╣рдо рдЕрдкрдиреЗ рдкреНрд░реЛрдореЗрдерд┐рдпрд╕ рд╕рд░реНрд╡рд░ рдореЗрдВ рдХреЗрд╡рд▓ рджреЗрд╢ рдХреЛрдб рдХреЛ рдЪрд╛рдмрд┐рдпреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддреЗ рд╣реИрдВред рддреЛ рдЕрднреА, рдЕрдЧрд░ рдореИрдВ рдЙрддреНрддрд░реА рдЕрдореЗрд░рд┐рдХрд╛ рдореЗрдВ рд╕рднреА рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреЛ рджреЗрдЦрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рддреЛ рдореБрдЭреЗ рд▓рдЧрднрдЧ 100 рджреЗрд╢реЛрдВ рдореЗрдВ рд╕реЗ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреА рдХреНрд╡реЗрд░реА-рдЖрдзрд╛рд░рд┐рдд рд╕реВрдЪреА рд╕реЗ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдпреВрдПрд╕, рд╕реАрдП, рдПрдордПрдХреНрд╕ рдХрд╛ рдЪрдпрди рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдореИрдВ рдЖрдкрдХреЛ рдпрд╣ рднреА рдирд╣реАрдВ рдмрддрд╛ рд╕рдХрддрд╛ рдХрд┐ рдореИрдВ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпреВрд░реЛрдк, рдпрд╛ рдПрд╢рд┐рдпрд╛, рдпрд╛ рдЕрдлреНрд░реАрдХрд╛ рдХреЗ рд╣рд░ рджреЗрд╢ рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдореЗрдВ рдХрд┐рддрдирд╛ рд╕рдордп рд▓рдЧрд╛рддрд╛ рд╣реВрдВред рдкреНрд░рддреНрдпреЗрдХ рдХреНрд╖реЗрддреНрд░ рдХреЗ рд▓рд┐рдП рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд▓рдЧ рдбреИрд╢рдмреЛрд░реНрдб рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рд▓рдЧрднрдЧ рдЙрдЪрд┐рдд рд╣реИ, рдЬреЛ рдмреЗрддреБрдХрд╛ рд╣реИ рд▓реЗрдХрд┐рди рд╣рд╛рд░реНрдб-рдХреЛрдбрд┐рдВрдЧ рдЧреНрд░рд╛рдлрд╝ рдХреА рдХрдореА рдХреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХрд╛ рдПрдХрдорд╛рддреНрд░ рддрд░реАрдХрд╛ рд╣реИред рдореИрдкрд┐рдВрдЧ рдХреЗ рд╕рд╛рде рдПрдХ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдирдпрд╛ рдбреЗрдЯрд╛рдмреЗрд╕ рдмрдирд╛рдирд╛ рдФрд░ рдлрд┐рд░ рдЫрд┐рдкреЗ рд╣реБрдП рдкреНрд░рд╢реНрди рдХрд░рдирд╛ рднреА рдЖрджрд░реНрд╢ рд╕реЗ рдмрд╣реБрдд рджреВрд░ рд▓рдЧрддрд╛ рд╣реИред

рдореЗрд░рд╛ рдмреБрдЦрд╛рд░ рд╕рдкрдирд╛:
рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рд╕рдВрднрд╛рд╡рд┐рдд рдирдП рдкреНрд░рдХрд╛рд░ рдХреЗ рдЪрд░ рдХреЗ рд░реВрдк рдореЗрдВ "рдХрд╕реНрдЯрдо рд╕реВрдЪреА" рд╡рд┐рдХрд▓реНрдк рд╣реЛрдЧрд╛ред рдпрджрд┐ рдЪрдпрдирд┐рдд рд╣реЛ рддреЛ рдХрд╕реНрдЯрдо рд╕реВрдЪреА рдЦрд╛рд▓реА рд╢реБрд░реВ рд╣реЛ рдЬрд╛рдПрдЧреА, рд▓реЗрдХрд┐рди рдмрд╣реБрдд рдХреБрдЫ "рдХрд╕реНрдЯрдо" рдореЙрдбрд▓ рдХреА рддрд░рд╣ рдЖрдЬ рджрд┐рдЦрддреА рд╣реИред рдПрдХ "рдЬреЛрдбрд╝реЗрдВ" рдмрдЯрди рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛ред "рдЬреЛрдбрд╝реЗрдВ" рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рдиреЗ рд╕реЗ "рдбрд┐рд╕реНрдкреНрд▓реЗ рд╡реИрд▓реНрдпреВ:" рдФрд░ "рд╕рд░реНрдЪ рд╡реИрд▓реНрдпреВ:" рдХреЗ рд╕рд╛рде рдПрдХ рджреЛ-рдлреАрд▓реНрдб рдЗрдирдкреБрдЯ рдРрд░реЗ рдмрди рдЬрд╛рдПрдЧрд╛, рдЬрд╣рд╛рдВ рдкреНрд░рддреНрдпреЗрдХ рдХреЛ рднрд░рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред "рдбрд┐рд╕реНрдкреНрд▓реЗ рд╡реИрд▓реНрдпреВ" рд╡рд╣ рд╣реЛрдЧрд╛ рдЬреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкрд┐рдХрд▓рд┐рд╕реНрдЯ рдореЗрдВ рджрд┐рдЦрд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ - рд╣рдорд╛рд░реЗ рдореЗрдВ рдорд╛рдорд▓рд╛, "рдЙрддреНрддрд░реА рдЕрдореЗрд░рд┐рдХрд╛"ред рдлрд┐рд░ "рдЦреЛрдЬ рдореВрд▓реНрдп" рд╡рд╣ рд╣реЛрдЧрд╛ рдЬреЛ рдкреНрд░рд╢реНрди рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ - рдлрд┐рд░ рд╕реЗ, рдЙрддреНрддрд░реА рдЕрдореЗрд░рд┐рдХрд╛ рдХреЗ рд▓рд┐рдП рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рдпрд╣ "us,ca,mx" рд╣реЛрдЧрд╛ред рдХрд┐рд╕реА рднреА рд╕рдордп, рдПрдХ "рдбрд┐рд▓реАрдЯ" рдЖрдЗрдХрди (рдЯреНрд░реИрд╢ рдХреИрди?) рдЕрд▓рдЧ-рдЕрд▓рдЧ рд▓рд╛рдЗрдиреЛрдВ рдХреЛ рджреВрд░ рдХрд░ рджреЗрдЧрд╛ред "рдЬреЛрдбрд╝реЗрдВ" рдмрдЯрди рдкрд░ рдлрд┐рд░ рд╕реЗ рдХреНрд▓рд┐рдХ рдХрд░рдиреЗ рд╕реЗ рдПрдХ рдирдИ рдЬреЛрдбрд╝реА рдмрди рдЬрд╛рдПрдЧреА, рдЬрдм рддрдХ рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЕрдкрдиреЗ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреА рд╕реВрдЪреА рдкреВрд░реА рдирд╣реАрдВ рдХрд░ рд▓реЗрддрд╛ред "рдмрд╣реБ-рдореВрд▓реНрдп" рдФрд░ "рд╕рднреА рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ" рд╡рд┐рдХрд▓реНрдк рдореМрдЬреВрджрд╛ рдХрд╕реНрдЯрдо рдореЙрдбрд▓ рдХреЗ рд╕рдорд╛рди рд╣реА рд░рд╣реЗрдВрдЧреЗред

рдореБрдЭреЗ рдмрд╣реБрдд рдЖрд╢реНрдЪрд░реНрдп рд╣реИ рдХрд┐ рдЗрд╕реЗ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ - рдореИрдВрдиреЗ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдореЗрдВ рдХрд╛рдлреА рд╕рдордп рдмрд┐рддрд╛рдпрд╛ рдХрд┐ рдпрд╣ "рд╕реНрдкрд╖реНрдЯ" рдЪреАрдЬрд╝ рдХреИрд╕реЗ рд╣реЛрддреА рд╣реИ рдФрд░ рдЕрдВрддрддрдГ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдореЗрд░рд╛ рд░рд╛рд╕реНрддрд╛ рдорд┐рд▓ рдЧрдпрд╛ рдХрд┐ рдпрд╣ рдЕрд╕реНрддрд┐рддреНрд╡ рдореЗрдВ рдирд╣реАрдВ рд╣реИред

рдореИрдВрдиреЗ рдЗрд╕реЗ рдПрдХ MySQL рдбреЗрдЯрд╛рдмреЗрд╕ рдмрдирд╛рдХрд░ рд╣рд▓ рдХрд┐рдпрд╛ рд╣реИ, рдореИрдВ рдбреНрд░реЙрдкрдбрд╛рдЙрди рдореЗрдВ рдЗрдЪреНрдЫрд┐рдд рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдЯреЗрдмрд▓ рдмрдирд╛рддрд╛ рд╣реВрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдпреВрд░реЛрдк, рдЙрддреНрддрд░реА рдЕрдореЗрд░рд┐рдХрд╛ рдЗрддреНрдпрд╛рджрд┐ред рджреВрд╕рд░реЗ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд░реЗрдЧреЗрдХреНрд╕ рд╣реИ рдЬреЛ рдЙрди рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпреЛрдВ рд╕реЗ рдореЗрд▓ рдЦрд╛рдПрдЧрд╛ рдЬреЛ рдореИрдВ рдорд┐рд▓рд╛рди рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рдлрд┐рд░ MySQL рдХреЛ рдбреЗрдЯрд╛ рд╕реНрд░реЛрдд рдХреЗ рд░реВрдк рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ рдФрд░ рдЪрд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рдпрд╣ рдПрдХ рд╣реИрдХ рд╣реИ рд▓реЗрдХрд┐рди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрд╛рдлреА рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдореИрдВ рдЗрд╕реЗ рдЙрд╕ рд╕рдЯреАрдХ рдЪреАрдЬрд╝ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ рдЬрд┐рд╕реЗ рдЖрдк рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд░рд╣реЗ рд╣реИрдВред

рдореИрдВ рдЪрддреБрд░ рд╣реИрдХ рдХреА рд╕рд░рд╛рд╣рдирд╛ рдХрд░рддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИред рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдХреБрдВрдЬреА/рдореВрд▓реНрдп рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдирдпрд╛ рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ (рд╣рдо MySQL рдХрд╛ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдпрд╣ рдЕрд╕рдВрднрд╡ рд╣реИ) рдХрд╛рдлреА рд╕реНрдерд┐рд░ рд╣реИ рдЬреЛ рдХреВрджрдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕рд╛рд░реЗ рд╣реБрдкреНрд╕ рдХреА рддрд░рд╣ рд▓рдЧрддрд╛ рд╣реИред

рдореИрдВ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рдФрд░ рд╕реЛрдЪ рд░рд╣рд╛ рдерд╛, рдФрд░ рдЗрд╕ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЛ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдФрд░ рднреА рд╢рд╛рдирджрд╛рд░ рддрд░реАрдХрд╛ рд╣реИ рдЬреЛ рдореИрдВрдиреЗ рдКрдкрд░ рд╡рд░реНрдгрд┐рдд рдХрд┐рдпрд╛ рд╣реИред рдореИрдВ рдЗрд╕реЗ "рд╡реИрд░рд┐рдПрдмрд▓ рдореИрдХреНрд░реЛ" рдХрд╣реВрдВрдЧрд╛ред рдпрд╣ рдлрд┐рд░ рд╕реЗ рдПрдХ рдХрд╕реНрдЯрдо рд╕реВрдЪреА рдХреА рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ, рд╕рд┐рд╡рд╛рдп рдЗрд╕рдХреЗ рдХрд┐ рдпрд╣ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдХреЛ рдпрд╣ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдХрд┐ рдЬрдм рдЗрди рдореИрдХреНрд░реЛ рдореЗрдВ рд╕реЗ рдПрдХ (рдпрд╛ рдЕрдзрд┐рдХ) рдХрд╛ рдЪрдпрди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдирд╛рдорд┐рдд рдЪрд░ рд╕реЗрдЯ рдХрд┐рдП рдЬрд╛рдПрдВрдЧреЗ, рдФрд░ рджрд┐рдП рдЧрдП рдорд╛рди рдореМрдЬреВрджрд╛ рдорд╛рдиреЛрдВ рдХреЗ рд╕реЗрдЯ рдореЗрдВ рдЬреЛрдбрд╝ рджрд┐рдП рдЬрд╛рдПрдВрдЧреЗред рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдПрдХ рдпреВрдЖрдИ-рд╕рдВрдЪрд╛рд▓рд┐рдд рдореЙрдбрд▓ рд╣реЛрдЧрд╛, рдФрд░ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЪрд░ рдЕрд╡рдзрд╛рд░рдгрд╛ рдХреЛ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдирд╣реАрдВ рдмрджрд▓реЗрдЧрд╛ - рдпрд╣ рдореМрдЬреВрджрд╛ рдЪрд░ рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ рдПрдХ рд╕реНрд╡рдд: рдкреВрд░реНрдгрддрд╛ рдЪреАрдиреА рдкрд░рдд рдмрдирд╛ рджреЗрдЧрд╛ред рдпрд╣ рдЗрд╕реЗ рдмреИрдХрд╡рд░реНрдб-рд╕рдВрдЧрдд рдмрдирд╛рддрд╛ рд╣реИ рдФрд░ рдкреНрд░рд╢реНрдиреЛрдВ рдореЗрдВ рдирд┐рд░реНрдорд╛рдг рдпрд╛ рдПрдХреАрдХрд░рдг рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рдЕрддрд┐рд░рд┐рдХреНрдд рдЪрд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред

рдПрдХ рдореИрдХреНрд░реЛ рдЬреЛ рдЪрд░ рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реИ, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдореВрд▓реНрдпреЛрдВ рдХреЛ рджреЗрдЦрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЙрдирдХрд╛ рдЪрдпрди рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, рдФрд░ рдлрд┐рд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдкреНрд░рддреНрдпреЗрдХ рдЪрд░ рдХреЛ рдЦреЛрд▓рдиреЗ рдФрд░ рдореЗрд░реА рдкрд┐рдЫрд▓реА рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рдЕрд▓рдЧ рдЪрд░ рдмрдирд╛рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдЪрдпрди рдпрд╛ рдбреЗрдЯрд╛ рдХреЛ рджреЗрдЦрдиреЗ/рд╣реЗрд░рдлреЗрд░ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛ред рдорддрд▓рдмред рдпрд╣ рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╕рд╣рдЬ рдЬреНрдЮрд╛рди рдпреБрдХреНрдд рд╣реЛрдЧрд╛ред

рдЙрджрд╛рд╣рд░рдг:

рддреЛ "рдЙрддреНрддрд░реА рдЕрдореЗрд░рд┐рдХрд╛ - рдкреНрд░рд╛рдердорд┐рдХ рдХреНрд▓рд╕реНрдЯрд░" рдирд╛рдордХ рдПрдХ рдЪрд░ рдореИрдХреНрд░реЛ рдореЗрд░реЗ "рджреЗрд╢" рдЪрд░ рдХреЛ "us,ca,mx" рдкрд░ рд╕реЗрдЯ рдХрд░реЗрдЧрд╛ рдФрд░ рдореЗрд░реЗ "рдХреНрд▓рд╕реНрдЯрд░:" рдЪрд░ рдХреЛ "рдкреНрд░рд╛рдердорд┐рдХ" рдкрд░ рд╕реЗрдЯ рдХрд░реЗрдЧрд╛ред рдпрджрд┐ рдореИрдВ рдкреНрд░рддреНрдпреЗрдХ рдирд╛рдорд┐рдд рдЪрд░ (рдпрд╛ рдирд╣реАрдВ, рдпрджрд┐ рд╡реЗ рдЫрд┐рдкреЗ рд╣реБрдП рд╣реИрдВ) рдХреЛ рдиреАрдЪреЗ рдЦреАрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рд╡реЗ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рджрд┐рдЦрд╛рдИ рджреЗрдВрдЧреЗ, рддреЛ рдореИрдВ рджреЗрд╢реЛрдВ рдХреЛ рджреЗрд╢ рдореЗрдВ рдЬреЛрдбрд╝ рдпрд╛ рдШрдЯрд╛ рд╕рдХрддрд╛ рд╣реВрдВ: рд╕реВрдЪреА рдЬрдм рддрдХ рдореИрдВ рдореИрдХреНрд░реЛ рдЪрд░ рдкреБрд▓рдбрд╛рдЙрди рдХреЛ рдлрд┐рд░ рд╕реЗ рдирд╣реАрдВ рдЫреВрддрд╛ред

рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ "рд╕реЗрдЯрд┐рдВрдЧ рд╕реЗ рдкрд╣рд▓реЗ рд╕реНрдкрд╖реНрдЯ рдирд╛рдорд┐рдд рдЪрд░" рдХрд╛ рдПрдХ рдмреВрд▓рд┐рдпрди рд╣реИ рддрд╛рдХрд┐ рдпрджрд┐ рдЗрд╕ рдореИрдХреНрд░реЛ рдХреЗ рд▓рд┐рдП рдкрд┐рдХрд▓рд┐рд╕реНрдЯ рдореЗрдВ рдХреЛрдИ рдкрд░рд┐рд╡рд░реНрддрди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЪрд░ рдХреЗ рдХрд┐рд╕реА рднреА рдЕрдиреНрдп рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЛ рд╕рд╛рдлрд╝ рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдпрд╣ рдЙрди рд╕реВрдЪрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬрд╣рд╛рдВ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЖрдк рдХреБрдЫ рдРрд╕рд╛ рд╢рд╛рдорд┐рд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдкрд╣рд▓реЗ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрджрд┐ рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рдЪрд░ рдореИрдХреНрд░реЛ рд╡рд┐рдХрд▓реНрдк рдЪреБрдиреЗ рдЧрдП рдереЗ, рддреЛ рд╕реВрдЪреА рдореЗрдВ рдЕрдВрддрд┐рдо рдПрдХ "рдЬреАрддрддрд╛ рд╣реИ" рдЕрдЧрд░ рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рдореВрд▓реНрдп рдХреА рдкреНрд░рддрд┐рд╕реНрдкрд░реНрдзреА рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рд╣реИрдВ; рдЙрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЗ рдЖрд╕рдкрд╛рд╕ рдХреЛрдИ рд░рд╛рд╕реНрддрд╛ рдирд╣реАрдВред (рдпрд╣ рддрд░реНрдХрдкреВрд░реНрдг рд╣реИ рдХрд┐ рдЗрд╕ рд╕рдорд╛рд╢реЛрдзрди рдХреНрд░рд┐рдпрд╛ рдХреЛ рдЪрд░-рджрд░-рдЪрд░ рдЖрдзрд╛рд░ рдкрд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдереЛрдбрд╝рд╛ рдЕрд╡реНрдпрд╡рд╕реНрдерд┐рдд рд▓рдЧрддрд╛ рд╣реИ ... рд▓реЗрдХрд┐рди рд╣реИ рдирд╛?)

рдпрд╣рд╛рдБ рдореЗрд░рд╛ рдХрд╛рд▓реНрдкрдирд┐рдХ рдЙрджрд╛рд╣рд░рдг рдлрд┐рд░ рд╕реЗ рд╣реИ, рдЬрд╣рд╛рдБ рдореЗрд░реЗ рдкрд╛рд╕ "рджреЗрд╢" рдФрд░ "рдХреНрд▓рд╕реНрдЯрд░" рдХреЗ рдкрд╣рд▓реЗ рд╕реЗ рдореМрдЬреВрдж рдЪрд░ рд╣реИрдВред

рдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдореИрдХреНрд░реЛ рдирд╛рдо: рдХреНрд╖реЗрддреНрд░

рдирд╛рдо1: рдЙрддреНрддрд░реА рдЕрдореЗрд░рд┐рдХрд╛ - рдкреНрд░рд╛рдердорд┐рдХ рдХреНрд▓рд╕реНрдЯрд░
рд╕реЗрдЯрд┐рдВрдЧ рд╕реЗ рдкрд╣рд▓реЗ рдирд╛рдорд╛рдВрдХрд┐рдд рдЪрд░ рд╕рд╛рдлрд╝ рдХрд░реЗрдВ: Y
рдЪрд░1: рджреЗрд╢
Value1: рдпреВрдПрд╕, рд╕реАрдП, рдПрдордПрдХреНрд╕
рдЪрд░ 2: рдХреНрд▓рд╕реНрдЯрд░
Value2: рдкреНрд░рд╛рдердорд┐рдХ

рдирд╛рдо 2: рдиреЙрд░реНрдбрд┐рдХреНрд╕ - рдорд╛рдзреНрдпрдорд┐рдХ рдХреНрд▓рд╕реНрдЯрд░
рд╕реЗрдЯрд┐рдВрдЧ рд╕реЗ рдкрд╣рд▓реЗ рдирд╛рдорд╛рдВрдХрд┐рдд рдЪрд░ рд╕рд╛рдлрд╝ рдХрд░реЗрдВ: Y
рдЪрд░1: рджреЗрд╢
Value1: рд╕реЗ, рдлрд╛рдИ, рдирд╣реАрдВ, рдбреАрдХреЗ, is
рдЪрд░ 2: рдХреНрд▓рд╕реНрдЯрд░
Value2: рдорд╛рдзреНрдпрдорд┐рдХ

рдореИрдВ рдЪрддреБрд░ рд╣реИрдХ рдХреА рд╕рд░рд╛рд╣рдирд╛ рдХрд░рддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИред рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдХреБрдВрдЬреА/рдореВрд▓реНрдп рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдирдпрд╛ рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ (рд╣рдо MySQL рдХрд╛ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдпрд╣ рдЕрд╕рдВрднрд╡ рд╣реИ) рдХрд╛рдлреА рд╕реНрдерд┐рд░ рд╣реИ рдЬреЛ рдХреВрджрдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕рд╛рд░реЗ рд╣реБрдкреНрд╕ рдХреА рддрд░рд╣ рд▓рдЧрддрд╛ рд╣реИред

рдореИрдВ рдЙрдореНрдореАрдж рдХрд░ рд░рд╣рд╛ рдерд╛ рдХрд┐ рдЖрдк рдРрд╕рд╛ рдХреБрдЫ рдХрд╣реЗрдВрдЧреЗред рд╡рд╛рд╕реНрддрд╡рд┐рдХрддрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдЖрдкрдиреЗ рд╣реИрдХ рдХреЗ рд▓рд┐рдП рдХрд╣рд╛ рд╣реИ рдФрд░ рдпрд╣ рд╣реИрдХ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд░рддрд╛ рд╣реИ, рдЗрд╕реЗ рд╕реЗрдЯрдЕрдк рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рдирд╣реАрдВ рд╣реИ рдФрд░ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдЗрд╕реЗ рдЙрд▓рдЯрдирд╛ рдореБрд╢реНрдХрд┐рд▓ рдирд╣реАрдВ рд╣реИред рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╡рд╣рд╛рдВ MySQL рд░рдЦрдирд╛ рдХрд╛рдлреА рдЖрд╕рд╛рди рд▓рдЧрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╣рдо рдЗрд╕рдореЗрдВ рдирдП рдбреЗрдЯрд╛ рд╕реЗрдЯ рдЬреЛрдбрд╝рддреЗ рд░рд╣рддреЗ рд╣реИрдВ, рдпрд╣ рдЯреНрд░реИрдХ рд░рдЦрдиреЗ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╕реНрдерд╛рди рд╣реИред рдпрджрд┐ рдЖрдк рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрддреЗ рд╣реИрдВ, рдпрджрд┐ рдЖрдк рдЗрди рдбреЗрдЯрд╛ рд╕реЗрдЯреЛрдВ рдХреЛ рдХрдИ рдбреИрд╢рдмреЛрд░реНрдб рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдХреЗрдВрджреНрд░реАрдп рд░реВрдк рд╕реЗ рдмрдирд╛рдП рд░рдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЙрдиреНрд╣реЗрдВ рдХрд╣реАрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдпрджрд┐ рдЖрдкрдХрд╛ рдЯрд╛рдЗрдо рд╕реАрд░реАрдЬрд╝ рдбреЗрдЯрд╛рдмреЗрд╕ рдЙрдиреНрд╣реЗрдВ рд╕реНрдЯреЛрд░ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рддреЛ рдЖрдкрдХреЛ рдЙрдиреНрд╣реЗрдВ рд╕реНрдЯреЛрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╕реЗрдЯрдЕрдк рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рддреЛ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ MySQL рдХреЗ рд▓рд┐рдП рд╕рд╣реА рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рдмреЛрдирд╕ MySQL рдХреА рдЖрдмрд╛рджреА рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХрд░рдирд╛ рднреА рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИред

рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ PostgreSQL рд╣реИ, рддреЛ рдЖрдкрдХреЛ рдореИрдкрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рддрд╛рд▓рд┐рдХрд╛ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдЖрдк рдХреБрдЫ рдРрд╕рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

SELECT *
FROM
(
    VALUES
        ('London server 1', 'london_srv_1'),
        ('London server 2', 'london_srv_2'),
        ('New York server 1', 'ny_srv_1'),
        ('New York server 2', 'ny_srv_2')
) AS t (__text, __value)

рд▓реЗрдХрд┐рди рдпрд╣ рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдорд╛рдиреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ:

рдЪреБрдиреЗрдВ * рд╕реЗ (рдорд╛рди ('рдареАрдХ', '0'), ('рддреНрд░реБрдЯрд┐', '1')) AS t (__text, __value)

рдбреИрд╢рдмреЛрд░реНрдб рд▓реЛрдб рдХрд░рддреЗ рд╕рдордп:

imagen

рдФрд░ рджреВрд╕рд░реЗ рдкреИрд░рд╛рдореАрдЯрд░ рдХрд╛ рдЪрдпрди рдХрд░рддреЗ рд╕рдордп

imagen

рдЪрдпрди рдХрд░рддреЗ рд╕рдордп: рдареАрдХ + рддреНрд░реБрдЯрд┐

imagen

рдпрджрд┐ рдЖрдк рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдорд╛рди рдЪрд╛рд╣рддреЗ рд╣реИрдВ рддреЛ рдЖрдкрдХреЛ рдПрдХрд▓ рдЙрджреНрдзрд░рдгреЛрдВ рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЕрдиреНрдпрдерд╛ рдЗрд╕реЗ рдкрд╛рда рдХреЗ рд░реВрдк рдореЗрдВ рд╡реНрдпрд╛рдЦреНрдпрд╛рдпрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЕрд░реНрдерд╛рдд

SELECT * FROM ( VALUES ( 'OK', 0), ( 'ERROR', 1) ) AS t (__text, __value)

рдЙрддреНрддрд░ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж @GlennMatthys glenn, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рд╕рдорд╕реНрдпрд╛ рдХрд╣рд╛рдВ рд╣реЛрддреА рд╣реИред

рдЪреБрдиреЗрдВ * рд╕реЗ (рдорд╛рди ('рдареАрдХ', 0), ('рдЪреЗрддрд╛рд╡рдиреА', 1), ('рдорд╣рддреНрд╡рдкреВрд░реНрдг', 2)) AS t (__text, __value)

рдорд▓реНрдЯреА-рд╡реИрд▓реНрдпреВ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛:

imagen

рд╣реЛрддрд╛ рд╣реИ
imagen

3 рд░рд╛рдЬреНрдпреЛрдВ рдХрд╛ рдЪрдпрди
imagen

рдФрд░ рдмрд╣реБ-рдореВрд▓реНрдп рдмрдВрдж:

imagen

рдЧреНрд▓реЗрдирдореИрдерд┐рд╕ - рдЖрдкрдХрд╛ рд╕рдорд╛рдзрд╛рди рдПрдХрджрдо рд╕рд╣реА рд╣реИ, рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж

MySQL рдХреЗ рд▓рд┐рдП рдЗрд╕рдХреА:
SELECT * FROM ( VALUES row('a', 1), row('b', 2) ) AS t (__text, __value)

рдорд╛рд░рд┐рдпрд╛рдбрдм рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛? рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИ (рдорд╛рд░рд┐рдпрд╛рдбреАрдмреА рд╕рдВрд╕реНрдХрд░рдг: 10.5.5)

SELECT * FROM ( VALUES row('a', 1), row('b', 2) ) AS t (__text, __value);
ERROR 1064 (42000)..............

рдпрд╛ рдкрд╣рд▓реЗ рд╡рд╛рд▓рд╛:

SELECT * FROM ( VALUES ( 'OK', 0), ( 'Warning', 1), ('Critical', 2) ) AS t (__text, __value);
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your 
MariaDB server version for the right syntax to use near '(__text, __value)' at line 1

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдорд╛рди рд╡рд┐рд╡рд░рдг рдЕрдм рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рд╣реИ...

рдпрд╛ рдХреБрдЫ рдФрд░ рд╣реИ рдЬреЛ рдореИрдВ рдЧрд▓рдд рдХрд░рддрд╛ рд╣реВрдБ?

@radoeka рдкреБрд░рд╛рдиреЗ MariaDB/MySQL рдХреЗ рд▓рд┐рдП

SELECT * FROM
(
    SELECT 'London server 1' AS '__text', 'london_srv_1' AS '__value'
    UNION ALL SELECT 'London server 2', 'london_srv_2'
    UNION ALL SELECT 'New York server 1', 'ny_srv_1'
    UNION ALL SELECT 'New York server 2', 'ny_srv_2'
) AS t;

@GlennMatthys рд╡рд╛рд╣ рд╡рд╛рд╣, рдХреНрдпрд╛ рддреЗрдЬрд╝ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╣реИ! рдФрд░ рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
рдореИрдВрдиреЗ рд╕реЛрдЪрд╛ рдерд╛ рдХрд┐ рдореИрдВ рдорд╛рд░рд┐рдпрд╛рдбрдм рдХрд╛ рдПрдХ рдирдпрд╛ рд╕рдВрд╕реНрдХрд░рдг рдЪрд▓рд╛ рд░рд╣рд╛ рдерд╛, рд▓реЗрдХрд┐рди рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИ (рд▓рд┐рдирдХреНрд╕ рд╡рд┐рддрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЬреЛ рдХреЗрд╡рд▓ 2 рдорд╣реАрдиреЗ рдкреБрд░рд╛рдирд╛ рд╣реИ)ред
рдзрдиреНрдпрд╡рд╛рджред

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкреНрд░реЛрдореЗрдерд┐рдпрд╕ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИред

рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ #27829 рдХреЗ рд░реВрдк рдореЗрдВ рдлрд┐рд░ рд╕реЗ рдЦреЛрд▓рдиреЗ рд╕реЗ рдпрд╣ рдХреЗрд╡рд▓ рд╕реНрдерд┐рд░ рдбреЗрдЯрд╛ рдХреЗ рд▓рд┐рдП рд╣рд▓ рдХрд░рддрд╛ рд╣реИред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

PaulKlumpp picture PaulKlumpp  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

calind picture calind  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

victorhooi picture victorhooi  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

KlavsKlavsen picture KlavsKlavsen  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

SATHVIKRAJU picture SATHVIKRAJU  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ