Why Azure Logic Apps Beats Power Automate

Mirko PetersPodcasts1 hour ago8 Views


1
00:00:00,000 –> 00:00:02,400
Most people think more connectors means more power.

2
00:00:02,400 –> 00:00:03,440
The truth?

3
00:00:03,440 –> 00:00:05,320
Connect account is a vanity metric.

4
00:00:05,320 –> 00:00:08,200
Governance, scale and hybrid decide who survives

5
00:00:08,200 –> 00:00:10,120
and audit and who survives a spike.

6
00:00:10,120 –> 00:00:12,680
You can automate a birthday email with power automate.

7
00:00:12,680 –> 00:00:14,000
You cannot run a bank on it.

8
00:00:14,000 –> 00:00:15,400
Here’s what actually matters.

9
00:00:15,400 –> 00:00:17,320
We’re running side-by-side benchmarks

10
00:00:17,320 –> 00:00:19,440
that stress real enterprise needs.

11
00:00:19,440 –> 00:00:23,160
VNet secured on-prem data, high volume API orchestration,

12
00:00:23,160 –> 00:00:26,040
and AI agents with Azure Functions fallbacks.

13
00:00:26,040 –> 00:00:28,240
So we’ll show receipts as your monitor dashboards,

14
00:00:28,240 –> 00:00:31,560
app insights traces, our back assignments and audit logs.

15
00:00:31,560 –> 00:00:32,560
There’s a throughput ceiling,

16
00:00:32,560 –> 00:00:34,400
throttling your enterprise flows.

17
00:00:34,400 –> 00:00:36,600
We’re going to hit it on camera.

18
00:00:36,600 –> 00:00:39,480
Test plan and criteria, how we’re measuring beats.

19
00:00:39,480 –> 00:00:42,120
Okay, so here’s the thing, intent dictates architecture.

20
00:00:42,120 –> 00:00:44,600
Power automate exists for business user convenience.

21
00:00:44,600 –> 00:00:46,680
Approvals, notifications, light data,

22
00:00:46,680 –> 00:00:48,400
shuffling in Microsoft 365,

23
00:00:48,400 –> 00:00:51,520
Azure logic apps, serves IT managed integration,

24
00:00:51,520 –> 00:00:54,200
network boundaries, SLAs and consequences.

25
00:00:54,200 –> 00:00:55,520
We’re judging them accordingly,

26
00:00:55,520 –> 00:00:57,440
not pretending they solve the same problem.

27
00:00:57,440 –> 00:00:59,400
Matrix that matter, not marketing glitter,

28
00:00:59,400 –> 00:01:00,840
throughput per five minutes.

29
00:01:00,840 –> 00:01:03,040
Can the platform sustain burst without collapsing

30
00:01:03,040 –> 00:01:04,640
into back-offs and redries?

31
00:01:04,640 –> 00:01:06,040
Latency under load.

32
00:01:06,040 –> 00:01:07,440
Not the first happy path run,

33
00:01:07,440 –> 00:01:10,440
the P95 and P99 when the system is sweating,

34
00:01:10,440 –> 00:01:12,160
error rate and recoverability.

35
00:01:12,160 –> 00:01:15,080
Do failures dead letter cleanly and replay deterministically?

36
00:01:15,080 –> 00:01:17,160
Or do they vanish into run history purgatory?

37
00:01:17,160 –> 00:01:18,520
Governance visibility.

38
00:01:18,520 –> 00:01:20,360
Can an auditor answer who did what,

39
00:01:20,360 –> 00:01:23,120
when and from where, using first class tooling?

40
00:01:23,120 –> 00:01:26,920
Cost behavior at volume, predictable at 10 runs is cute,

41
00:01:26,920 –> 00:01:30,400
predictable at 100,000 actions is adulthood.

42
00:01:30,400 –> 00:01:31,720
Execution models matter.

43
00:01:31,720 –> 00:01:33,880
Power automate is effectively stateful only.

44
00:01:33,880 –> 00:01:36,000
Logic apps gives you stateful and stateless

45
00:01:36,000 –> 00:01:39,360
plus two hosting flavors, consumption and standard.

46
00:01:39,360 –> 00:01:41,680
That opens real control, stateless for millisecond

47
00:01:41,680 –> 00:01:43,680
path length, stateful for durability

48
00:01:43,680 –> 00:01:46,480
and standard for dedicated compute you can scale vertically

49
00:01:46,480 –> 00:01:47,680
and horizontally.

50
00:01:47,680 –> 00:01:50,000
In other words, you get knobs instead of prayers.

51
00:01:50,000 –> 00:01:52,200
Limits and scaling knobs side by side.

52
00:01:52,200 –> 00:01:54,920
Power automate enforces aggregate action limits

53
00:01:54,920 –> 00:01:56,240
across a tenant window.

54
00:01:56,240 –> 00:01:58,120
Hit the ceiling, get throttled.

55
00:01:58,120 –> 00:01:59,520
You don’t tune it, you wait.

56
00:01:59,520 –> 00:02:00,840
Logic apps.

57
00:02:00,840 –> 00:02:03,360
Standard runs on dedicated plans with scale out

58
00:02:03,360 –> 00:02:05,440
and consumption offers high throughput mode.

59
00:02:05,440 –> 00:02:07,760
You set concurrency and degree of parallelism,

60
00:02:07,760 –> 00:02:09,200
the platform responds.

61
00:02:09,200 –> 00:02:10,360
Governance is similar.

62
00:02:10,360 –> 00:02:12,920
Power automate has DLP and tenant policies,

63
00:02:12,920 –> 00:02:14,520
useful but coarse.

64
00:02:14,520 –> 00:02:17,240
Logic apps sits under Azure RBIAC as your policy

65
00:02:17,240 –> 00:02:18,880
as your monitor and app insights.

66
00:02:18,880 –> 00:02:19,960
That’s not nice to have.

67
00:02:19,960 –> 00:02:22,480
That’s the adult table hybrid posture.

68
00:02:22,480 –> 00:02:25,080
Power automates on premises data gateway works

69
00:02:25,080 –> 00:02:27,600
until you try to standardize it across dozens of apps

70
00:02:27,600 –> 00:02:29,280
and strict egress rules.

71
00:02:29,280 –> 00:02:31,760
Logic apps integrates with v-nets, private endpoints

72
00:02:31,760 –> 00:02:32,840
and yes, Azure Arc.

73
00:02:32,840 –> 00:02:34,440
So you bring the runtime to your data

74
00:02:34,440 –> 00:02:36,200
and still manage it from Azure.

75
00:02:36,200 –> 00:02:38,920
That’s how you pass a firewall review without bribery.

76
00:02:38,920 –> 00:02:40,040
Cost framing.

77
00:02:40,040 –> 00:02:42,800
Per flow licensing feels predictable at small scale

78
00:02:42,800 –> 00:02:45,040
then burst you workloads, hit platform throttles

79
00:02:45,040 –> 00:02:47,320
and you’re paying in failed runs and over time.

80
00:02:47,320 –> 00:02:49,320
Logic apps, consumption and plan-based models

81
00:02:49,320 –> 00:02:51,840
reward intentional concurrency and burst handling,

82
00:02:51,840 –> 00:02:53,320
optimize or pay for waste,

83
00:02:53,320 –> 00:02:55,040
but at least the levers exist.

84
00:02:55,040 –> 00:02:57,480
Artifacts will show because opinions are cheap.

85
00:02:57,480 –> 00:03:00,240
Azure monitor dashboards for ingestion rates and latency,

86
00:03:00,240 –> 00:03:02,640
app insights, traces with correlation IDs

87
00:03:02,640 –> 00:03:04,760
across connectors and functions,

88
00:03:04,760 –> 00:03:07,080
our back assignments proving least privilege

89
00:03:07,080 –> 00:03:09,320
and audit logs that answer compliance questions

90
00:03:09,320 –> 00:03:10,600
without folklore.

91
00:03:10,600 –> 00:03:14,080
With rules set, we’re going to break the 1,400 connectors

92
00:03:14,080 –> 00:03:16,960
illusion in three scenarios that actually matter.

93
00:03:16,960 –> 00:03:19,920
Scenario one, v-net secured, on-prem data,

94
00:03:19,920 –> 00:03:21,520
hybrid reality check.

95
00:03:21,520 –> 00:03:23,080
The problem you keep avoiding is simple.

96
00:03:23,080 –> 00:03:25,440
Your critical data isn’t lounging in SAS.

97
00:03:25,440 –> 00:03:28,400
It’s inside a subnet you got like a dragon.

98
00:03:28,400 –> 00:03:31,800
Power automates answer is the on-premises data gateway.

99
00:03:31,800 –> 00:03:35,600
It works until you try to operationalize it across 50 workloads

100
00:03:35,600 –> 00:03:38,720
with strict egress rules, certificate rotation

101
00:03:38,720 –> 00:03:40,760
and auditors who ask uncomfortable questions

102
00:03:40,760 –> 00:03:43,400
like who exactly created this connection

103
00:03:43,400 –> 00:03:45,400
and why does it have God mode.

104
00:03:45,400 –> 00:03:47,320
Here’s what actually happens in Power Automate.

105
00:03:47,320 –> 00:03:48,840
Connections are tied to makers.

106
00:03:48,840 –> 00:03:50,840
Makers change teams, leave the company,

107
00:03:50,840 –> 00:03:55,040
lose MFA devices and painfully drag their personal tokens

108
00:03:55,040 –> 00:03:55,840
into production.

109
00:03:55,840 –> 00:03:58,320
Tokens sprawl, connection drift, shared gateways

110
00:03:58,320 –> 00:04:01,120
that become everyone’s favorite single point of failure.

111
00:04:01,120 –> 00:04:03,680
You discover governance by outage, charming,

112
00:04:03,680 –> 00:04:04,960
inter-logic apps.

113
00:04:04,960 –> 00:04:07,200
We deploy the workflow into a secured v-net,

114
00:04:07,200 –> 00:04:08,640
integrate with private endpoints

115
00:04:08,640 –> 00:04:11,040
and bind access through managed identities.

116
00:04:11,040 –> 00:04:13,920
That means the workflow’s identity is service principle

117
00:04:13,920 –> 00:04:16,880
clean, not a human’s coffee-fueled session token.

118
00:04:16,880 –> 00:04:19,560
We restrict egress with NSGs and root tables

119
00:04:19,560 –> 00:04:21,840
and the only public service is none.

120
00:04:21,840 –> 00:04:25,160
If you’re allergic to public IPs, good news, so am I.

121
00:04:25,160 –> 00:04:28,200
Now, for the hybrid purists, Azure Arc,

122
00:04:28,200 –> 00:04:29,760
you don’t punch holes to the cloud,

123
00:04:29,760 –> 00:04:31,560
you bring the runtime to your cluster.

124
00:04:31,560 –> 00:04:33,360
The logic apps runtime runs as containers

125
00:04:33,360 –> 00:04:36,320
on your Arc enabled Kubernetes, on-prem or at the edge,

126
00:04:36,320 –> 00:04:38,520
while you still manage definitions, policy

127
00:04:38,520 –> 00:04:40,040
and monitoring from Azure.

128
00:04:40,040 –> 00:04:42,280
Data stays local, operations stays centralized.

129
00:04:42,280 –> 00:04:44,720
It’s almost like someone designed this for reality.

130
00:04:44,720 –> 00:04:46,480
Governance proof, not vibes.

131
00:04:46,480 –> 00:04:49,080
In Azure, we scope RBAC precisely.

132
00:04:49,080 –> 00:04:50,760
Reader for auditors, logic app,

133
00:04:50,760 –> 00:04:52,600
contributor for platform engineers

134
00:04:52,600 –> 00:04:54,320
and tightly-scoped key vault permissions

135
00:04:54,320 –> 00:04:56,240
for the managed identity.

136
00:04:56,240 –> 00:04:59,240
Azure policy enforces that workflows must reside in v-nets

137
00:04:59,240 –> 00:05:03,040
for bid public endpoints and require private DNS integration.

138
00:05:03,040 –> 00:05:05,640
Non-compliant deployments denied at the door.

139
00:05:05,640 –> 00:05:07,560
DLP is fine for citizen automation.

140
00:05:07,560 –> 00:05:09,320
Policy is how adults stop drift.

141
00:05:09,320 –> 00:05:10,400
We’ll show receipts.

142
00:05:10,400 –> 00:05:11,760
Azure Monitor, dashboard,

143
00:05:11,760 –> 00:05:13,480
ingress and egress metrics pinned,

144
00:05:13,480 –> 00:05:16,400
P95 latency steady even during batch windows.

145
00:05:16,400 –> 00:05:17,680
App insights traces.

146
00:05:17,680 –> 00:05:19,680
Each run carries a correlation ID

147
00:05:19,680 –> 00:05:22,440
from the HTTP trigger through the SQL built-in connector

148
00:05:22,440 –> 00:05:23,960
to a downstream function.

149
00:05:23,960 –> 00:05:26,680
You click the dependency map and watch the chain light up.

150
00:05:26,680 –> 00:05:29,440
No mystery wires, no heroic guessing.

151
00:05:29,440 –> 00:05:31,440
Let’s talk failure modes because pretending things

152
00:05:31,440 –> 00:05:34,080
won’t fail is how average users create incidents.

153
00:05:34,080 –> 00:05:36,480
In Power Automate, when a connection quietly expires

154
00:05:36,480 –> 00:05:39,080
on a shared gateway, flows start to back off.

155
00:05:39,080 –> 00:05:40,680
Some runs fail, some succeed,

156
00:05:40,680 –> 00:05:42,360
and the run history decorates itself

157
00:05:42,360 –> 00:05:45,080
with generic 429s and 5XX codes.

158
00:05:45,080 –> 00:05:47,840
You hunt across 10 flows to triangulate the root cause.

159
00:05:47,840 –> 00:05:49,840
Meanwhile, operations ask for post-mortem

160
00:05:49,840 –> 00:05:51,920
and you produce screenshots.

161
00:05:51,920 –> 00:05:54,360
Logic apps gives you measurable behavior.

162
00:05:54,360 –> 00:05:56,760
Stateful workflows apply deterministic retreats

163
00:05:56,760 –> 00:05:58,320
with exponential back off.

164
00:05:58,320 –> 00:06:00,080
Deadlet accuse capture poison messages

165
00:06:00,080 –> 00:06:01,360
so you can reprocess safely

166
00:06:01,360 –> 00:06:02,880
once the underlying system recovers.

167
00:06:02,880 –> 00:06:04,520
You tag runs with business keys

168
00:06:04,520 –> 00:06:06,880
so finance can rerun order 8472

169
00:06:06,880 –> 00:06:08,720
without resurrecting the entire batch.

170
00:06:08,720 –> 00:06:12,120
App insights alerts, wired to thresholds you chose,

171
00:06:12,120 –> 00:06:14,040
not whatever the platform felt like.

172
00:06:14,040 –> 00:06:17,320
Page the right team with context, not a flow failed.

173
00:06:17,320 –> 00:06:19,520
The actual failing dependency request ID

174
00:06:19,520 –> 00:06:21,320
and last known payload shape.

175
00:06:21,320 –> 00:06:24,080
Useful now performance under security constraints,

176
00:06:24,080 –> 00:06:25,840
we ran a vnet integrated standard plan

177
00:06:25,840 –> 00:06:28,440
with private endpoints into SQL and storage.

178
00:06:28,440 –> 00:06:30,360
During the 9am batch window,

179
00:06:30,360 –> 00:06:32,560
the workflows sustained a high flat throughput

180
00:06:32,560 –> 00:06:35,160
with P95 latency within the SLAB band.

181
00:06:35,160 –> 00:06:35,840
Why?

182
00:06:35,840 –> 00:06:38,000
Dedicated compute, tuned concurrency,

183
00:06:38,000 –> 00:06:40,080
and no public egress surprises.

184
00:06:40,080 –> 00:06:41,840
The network path is short, predictable,

185
00:06:41,840 –> 00:06:43,080
and under your control.

186
00:06:43,080 –> 00:06:46,320
Compare that to a gateway path crossing the public internet

187
00:06:46,320 –> 00:06:48,400
and the whims of a shared connector throttle.

188
00:06:48,400 –> 00:06:50,200
The truth, your hybrid isn’t hybrid

189
00:06:50,200 –> 00:06:51,760
if the network is a rumor.

190
00:06:51,760 –> 00:06:54,240
Our closes the loop for strict data residency.

191
00:06:54,240 –> 00:06:56,800
The runtime executes next to your database rack.

192
00:06:56,800 –> 00:06:59,800
Only control plain metadata touches Azure.

193
00:06:59,800 –> 00:07:01,800
Auditors ask, did data leave jurisdiction?

194
00:07:01,800 –> 00:07:03,880
And you reply no, and here are the logs.

195
00:07:03,880 –> 00:07:06,960
Azure activity logs show deployments and policy evaluations.

196
00:07:06,960 –> 00:07:08,880
App insights shows run telemetry.

197
00:07:08,880 –> 00:07:10,560
Roll assignments show least privilege.

198
00:07:10,560 –> 00:07:12,360
That’s an audit trail, not folklore.

199
00:07:12,360 –> 00:07:14,320
Security posture end to end.

200
00:07:14,320 –> 00:07:17,200
No secrets in run history because we use managed identities

201
00:07:17,200 –> 00:07:18,440
and key vault references.

202
00:07:18,440 –> 00:07:20,160
No wildcard firewall rules

203
00:07:20,160 –> 00:07:22,960
because private endpoints pin the service to your vnet.

204
00:07:22,960 –> 00:07:24,640
No mystery admin because our back

205
00:07:24,640 –> 00:07:26,400
denies curiosity by default.

206
00:07:26,400 –> 00:07:28,360
And when someone tries to deploy a workflow

207
00:07:28,360 –> 00:07:30,960
with a public trigger, Azure policy says no.

208
00:07:30,960 –> 00:07:33,040
Politely, consistently every time.

209
00:07:33,040 –> 00:07:33,920
Take away.

210
00:07:33,920 –> 00:07:36,720
Hybrid that auditors approve and ops can repeat.

211
00:07:36,720 –> 00:07:38,720
This is plumbing, not a permission slip.

212
00:07:38,720 –> 00:07:40,440
If your data is behind a firewall

213
00:07:40,440 –> 00:07:42,800
and your plan is share the gateway and hope.

214
00:07:42,800 –> 00:07:44,520
You don’t have an integration strategy.

215
00:07:44,520 –> 00:07:47,760
You have a compliance liability with a friendly UI.

216
00:07:47,760 –> 00:07:49,520
Everything changes when the network is real.

217
00:07:49,520 –> 00:07:51,760
The identity is managed and the logs tell the story

218
00:07:51,760 –> 00:07:53,080
without you narrating.

219
00:07:53,080 –> 00:07:55,120
If the plumbing holds, can it move volume?

220
00:07:55,120 –> 00:07:57,680
Good because next will push it hard.

221
00:07:57,680 –> 00:08:00,280
Thruput meets throttles scenario two.

222
00:08:00,280 –> 00:08:04,120
High volume API orchestration, throughput versus throttles.

223
00:08:04,120 –> 00:08:05,760
Volume isn’t a nice to have.

224
00:08:05,760 –> 00:08:06,800
It’s the default state.

225
00:08:06,800 –> 00:08:09,600
Once your proof of concept becomes someone’s quarterly target.

226
00:08:09,600 –> 00:08:11,680
Batch imports, order floods at top of hour.

227
00:08:11,680 –> 00:08:15,080
IoT spikes when devices come back online after maintenance.

228
00:08:15,080 –> 00:08:17,480
Not send an email, but thousands of actions

229
00:08:17,480 –> 00:08:20,480
per minute sustained with penalties if you missed the window.

230
00:08:20,480 –> 00:08:22,720
Here’s what actually happens when you ask each platform

231
00:08:22,720 –> 00:08:23,680
to sprint.

232
00:08:23,680 –> 00:08:25,840
Power automate lives under aggregate action caps

233
00:08:25,840 –> 00:08:27,200
across the tenant window.

234
00:08:27,200 –> 00:08:29,160
You don’t get a dial, you get a ceiling.

235
00:08:29,160 –> 00:08:30,760
When you hit it, the platform politely

236
00:08:30,760 –> 00:08:34,880
introduces you to back off, retries, and my favorite opaque slowdowns

237
00:08:34,880 –> 00:08:38,560
where runs succeed but bleed latency like a leaky radiator.

238
00:08:38,560 –> 00:08:41,560
You can’t shape concurrency per flow with surgical precision.

239
00:08:41,560 –> 00:08:43,480
You can’t isolate noisy neighbors.

240
00:08:43,480 –> 00:08:47,120
Your tuning option is weight, interlogic apps standard.

241
00:08:47,120 –> 00:08:48,200
Dedicated compute.

242
00:08:48,200 –> 00:08:50,440
You pick the plan, the course, the memory,

243
00:08:50,440 –> 00:08:53,080
and you scale horizontally when the graph says more.

244
00:08:53,080 –> 00:08:54,600
You set concurrency per action.

245
00:08:54,600 –> 00:08:57,240
You design for parallel fan out and controlled fan in.

246
00:08:57,240 –> 00:09:00,000
You choose stateless for hot parts with micro latency,

247
00:09:00,000 –> 00:09:02,240
stateful where durability and checkpoints matter.

248
00:09:02,240 –> 00:09:04,360
The result is intentional load shaping

249
00:09:04,360 –> 00:09:05,680
instead of platform roulette.

250
00:09:05,680 –> 00:09:06,760
Now let’s push it.

251
00:09:06,760 –> 00:09:10,000
We orchestrate an intake pipeline that ingests orders over HTTP

252
00:09:10,000 –> 00:09:12,400
and reaches from a product API, writes to SQL,

253
00:09:12,400 –> 00:09:15,800
posts to a message bus, then calls a downstream fulfillment API.

254
00:09:15,800 –> 00:09:19,000
Classic high volume pattern, parallelizable, dependency

255
00:09:19,000 –> 00:09:21,480
heavy, unforgiving to bottlenecks.

256
00:09:21,480 –> 00:09:24,480
In power automate, you parallelize steps in theory,

257
00:09:24,480 –> 00:09:27,760
but you run into action per interval throttles in practice.

258
00:09:27,760 –> 00:09:30,760
Hit enough connectors at once and the platform clamps down.

259
00:09:30,760 –> 00:09:31,880
Your average looks fine.

260
00:09:31,880 –> 00:09:34,480
Your P95 and P99 blowpast SLA.

261
00:09:34,480 –> 00:09:36,080
Burst turn into rolling delays.

262
00:09:36,080 –> 00:09:38,200
You start staggering triggers to dodge the limiter,

263
00:09:38,200 –> 00:09:40,480
which is code for admitting the platform is steering.

264
00:09:40,480 –> 00:09:42,200
Logic apps, standard stateless,

265
00:09:42,200 –> 00:09:44,560
fronted by the built-in HTTP trigger.

266
00:09:44,560 –> 00:09:47,240
We crank degree of parallelism to a level proven safe

267
00:09:47,240 –> 00:09:48,160
in load tests.

268
00:09:48,160 –> 00:09:50,080
The built-in SQL and service bus connectors

269
00:09:50,080 –> 00:09:53,440
write the same dedicated plan, no shared throttling pool

270
00:09:53,440 –> 00:09:54,800
with the rest of the tenant.

271
00:09:54,800 –> 00:09:57,440
We enable partition processing, use correlation IDs

272
00:09:57,440 –> 00:09:59,600
end-to-end, and enforce idempotency

273
00:09:59,600 –> 00:10:01,160
with a key check before write.

274
00:10:01,160 –> 00:10:04,240
Spikes land, compute scales out, and the flow keeps pace

275
00:10:04,240 –> 00:10:06,000
without manual babysitting.

276
00:10:06,000 –> 00:10:09,480
Error handling is where adults separate from hobbyists.

277
00:10:09,480 –> 00:10:11,520
Power automates retry policies exist,

278
00:10:11,520 –> 00:10:14,160
but dead lettering patterns are bolted on at best.

279
00:10:14,160 –> 00:10:17,640
When a downstream API throws a 429 with a retry after,

280
00:10:17,640 –> 00:10:19,960
your runs scatter across the timeline.

281
00:10:19,960 –> 00:10:21,840
Some eventually recover some time out,

282
00:10:21,840 –> 00:10:23,360
some clock the run history.

283
00:10:23,360 –> 00:10:25,440
Root calls turns into a scavenger hunt.

284
00:10:25,440 –> 00:10:27,120
Logic apps gives you durable retries

285
00:10:27,120 –> 00:10:29,880
with exponential back-off and jitter-y control.

286
00:10:29,880 –> 00:10:32,280
When a dependency is sick, you send messages

287
00:10:32,280 –> 00:10:35,440
to a dead letter entity with exact failure metadata.

288
00:10:35,440 –> 00:10:37,640
You rehydrate later with a replay workflow,

289
00:10:37,640 –> 00:10:40,520
preserving original payloads and correlation.

290
00:10:40,520 –> 00:10:43,040
idempotency, yes, the word average user’s pretend

291
00:10:43,040 –> 00:10:45,840
is optional, is built into the orchestration.

292
00:10:45,840 –> 00:10:47,640
That’s how you avoid double charging a card

293
00:10:47,640 –> 00:10:49,440
when a callback arrives twice.

294
00:10:49,440 –> 00:10:51,240
Observability isn’t a screenshot.

295
00:10:51,240 –> 00:10:52,560
It’s a map.

296
00:10:52,560 –> 00:10:54,320
Application insights traces every hop.

297
00:10:54,320 –> 00:10:56,760
HTTP in-enrichment call, SQL dependency

298
00:10:56,760 –> 00:10:58,320
bus publish for film and API.

299
00:10:58,320 –> 00:11:00,120
The dependency graph lights up the hot path.

300
00:11:00,120 –> 00:11:02,240
You spot the slow connector by name,

301
00:11:02,240 –> 00:11:04,280
see the status codes by bucket,

302
00:11:04,280 –> 00:11:06,560
and filter to the run that matter to the CFO

303
00:11:06,560 –> 00:11:08,600
because you tagged it with the order id.

304
00:11:08,600 –> 00:11:11,680
That’s incident response in minutes, not folklore over hours.

305
00:11:11,680 –> 00:11:13,000
Let’s talk cost-under pressure.

306
00:11:13,000 –> 00:11:14,800
Perflow licensing sounds predictable

307
00:11:14,800 –> 00:11:17,680
until throttles force longer run times and more retries,

308
00:11:17,680 –> 00:11:19,520
which ironically you can’t tune away,

309
00:11:19,520 –> 00:11:21,760
you pay in time and missed SLA penalties.

310
00:11:21,760 –> 00:11:24,240
Logic apps consumption with high throughput mode

311
00:11:24,240 –> 00:11:25,880
can blast through spikes.

312
00:11:25,880 –> 00:11:28,600
Hundreds of thousands of executions per five minutes,

313
00:11:28,600 –> 00:11:29,640
per workflow,

314
00:11:29,640 –> 00:11:33,360
while you control concurrency to protect downstream systems.

315
00:11:33,360 –> 00:11:35,720
Standard plan costs track to allocated compute

316
00:11:35,720 –> 00:11:37,960
and scale events you triggered for a reason.

317
00:11:37,960 –> 00:11:40,880
You pay to go fast on purpose, not to wait politely.

318
00:11:40,880 –> 00:11:44,000
Concurrency control isn’t just about speed,

319
00:11:44,000 –> 00:11:46,000
it’s about protecting dependencies.

320
00:11:46,000 –> 00:11:48,280
In logic apps, we apply circuit breakers.

321
00:11:48,280 –> 00:11:51,840
If fulfillment starts returning five XX over a threshold,

322
00:11:51,840 –> 00:11:54,840
we trip a short circuit, root to dead letter and alert.

323
00:11:54,840 –> 00:11:56,840
The rest of the pipeline continues absorbing input

324
00:11:56,840 –> 00:11:58,520
up to the buffer limit you set.

325
00:11:58,520 –> 00:12:01,480
In Power Automate, you inherit platform-wide guard rails

326
00:12:01,480 –> 00:12:03,560
that don’t know your system’s tolerance.

327
00:12:03,560 –> 00:12:05,440
The throttle applies, then your backlog grows

328
00:12:05,440 –> 00:12:06,840
in directions you didn’t choose.

329
00:12:06,840 –> 00:12:08,520
Now the micro story you’ve lived.

330
00:12:08,520 –> 00:12:12,360
Last quarter, someone scheduled a bulk import of hours.

331
00:12:12,360 –> 00:12:15,120
It collided with a finance job and a marketing sink.

332
00:12:15,120 –> 00:12:18,000
Power Automate flows slow to a crawl, run stacked,

333
00:12:18,000 –> 00:12:20,560
retries turned the queue into soup.

334
00:12:20,560 –> 00:12:22,680
The next morning customer service had a mystery,

335
00:12:22,680 –> 00:12:25,320
orders in the CRM, missing in fulfillment.

336
00:12:25,320 –> 00:12:28,040
Post-mortem action item, increase capacity,

337
00:12:28,040 –> 00:12:30,080
helpful, how we reran the same load

338
00:12:30,080 –> 00:12:32,080
through logic app standard stateless front door,

339
00:12:32,080 –> 00:12:34,000
stateful consolidation at the fan inn.

340
00:12:34,000 –> 00:12:37,640
Concurrency set to match downstream API quarters, not vibes.

341
00:12:37,640 –> 00:12:41,240
App Insights alerts tuned to P95 latency on enrichment

342
00:12:41,240 –> 00:12:43,640
and to 4 to 29 rates on fulfillment.

343
00:12:43,640 –> 00:12:46,360
Scale out triggered at queue depth, not on a calendar.

344
00:12:46,360 –> 00:12:48,160
The pipeline finished inside the window.

345
00:12:48,160 –> 00:12:50,080
SLA is met, no heroics.

346
00:12:50,080 –> 00:12:52,560
And yes, you can still burst without melting your wallet.

347
00:12:52,560 –> 00:12:54,600
Consumption with high throughput lets you sprint,

348
00:12:54,600 –> 00:12:56,760
then drop back to idle without paying for warm cores

349
00:12:56,760 –> 00:12:57,960
at noon on Sunday.

350
00:12:57,960 –> 00:12:59,640
Standard gives you predictable performance

351
00:12:59,640 –> 00:13:01,840
for steady volume with the option to scale.

352
00:13:01,840 –> 00:13:02,800
The point is agency.

353
00:13:02,800 –> 00:13:04,440
You pick the trade-offs, you enforce them

354
00:13:04,440 –> 00:13:06,000
with configuration, not hope.

355
00:13:06,000 –> 00:13:08,600
Operationally, this means fewer 3a mesh calls

356
00:13:08,600 –> 00:13:10,800
that say the flow is slow and more alerts

357
00:13:10,800 –> 00:13:14,720
that say fulfillment API at 70% error, circuit open,

358
00:13:14,720 –> 00:13:16,800
one down 142 messages protected.

359
00:13:16,800 –> 00:13:18,280
Next we try in 10 minutes.

360
00:13:18,280 –> 00:13:19,960
One is noise, the other is a plan.

361
00:13:19,960 –> 00:13:22,080
So no, the 1-400 connectors don’t save you

362
00:13:22,080 –> 00:13:23,600
when the stopwatch starts.

363
00:13:23,600 –> 00:13:26,680
Thruput isn’t a menu item, it’s an architecture.

364
00:13:26,680 –> 00:13:28,960
Build with dials, not ceilings.

365
00:13:28,960 –> 00:13:33,440
Scenario three, AI agent plus Azure functions.

366
00:13:33,440 –> 00:13:35,840
Fallback, when low-code hits a wall.

367
00:13:35,840 –> 00:13:38,000
AI agents aren’t magical interns.

368
00:13:38,000 –> 00:13:40,120
Their brittle orchestration wrapped around tools

369
00:13:40,120 –> 00:13:43,360
and the tools those glorious connectors cover the 80%.

370
00:13:43,360 –> 00:13:46,960
The last 20% is where your no-code forever fantasy goes to die.

371
00:13:46,960 –> 00:13:49,360
Custom transforms, model-specific parameters,

372
00:13:49,360 –> 00:13:51,880
policy logic that isn’t expressable as a drop-down.

373
00:13:51,880 –> 00:13:54,160
If your platform has no pro-code escape hatch,

374
00:13:54,160 –> 00:13:56,320
you’re building a clever demo, not a system.

375
00:13:56,320 –> 00:13:58,280
Here’s what actually happens in Power Automate

376
00:13:58,280 –> 00:14:00,640
when the connector can’t, you improvise,

377
00:14:00,640 –> 00:14:03,560
you stack HTTP actions with hand-rolled headers,

378
00:14:03,560 –> 00:14:05,960
you paste JSON schemas from last week’s email,

379
00:14:05,960 –> 00:14:08,440
you sprinkle past JSON, like confetti,

380
00:14:08,440 –> 00:14:11,120
to coerce shapes the UI refuses to understand.

381
00:14:11,120 –> 00:14:13,240
It works until the provider adds a field,

382
00:14:13,240 –> 00:14:16,800
changes a rate limit, or returns a 207 with mixed results.

383
00:14:16,800 –> 00:14:18,280
Then your flow turns into a museum

384
00:14:18,280 –> 00:14:20,440
of commented actions and diagnostic branches,

385
00:14:20,440 –> 00:14:22,440
technical debt disguised as convenience.

386
00:14:22,440 –> 00:14:24,560
Enter logic apps extensibility on purpose.

387
00:14:24,560 –> 00:14:26,040
You orchestrate in logic apps,

388
00:14:26,040 –> 00:14:29,280
you compute in Azure Functions when the job demands real code,

389
00:14:29,280 –> 00:14:31,720
the pattern is straightforward and repeatable.

390
00:14:31,720 –> 00:14:35,000
Keep the workflow declarative, triggers, routing,

391
00:14:35,000 –> 00:14:37,200
error policy, retries.

392
00:14:37,200 –> 00:14:39,040
Offload the null-y bits to functions,

393
00:14:39,040 –> 00:14:41,280
complex mapping, signature verification,

394
00:14:41,280 –> 00:14:44,080
vector store lookups, custom LLM tool calls,

395
00:14:44,080 –> 00:14:47,640
or policy evaluation that must run under a strict package set.

396
00:14:47,640 –> 00:14:49,000
Stateless where speed matters,

397
00:14:49,000 –> 00:14:51,040
stateful when you need checkpoints.

398
00:14:51,040 –> 00:14:52,800
You’re mixing Lego bricks with steel beams,

399
00:14:52,800 –> 00:14:54,120
and yes, that’s allowed.

400
00:14:54,120 –> 00:14:56,000
Let’s build the agent the grown-up way.

401
00:14:56,000 –> 00:14:57,840
The agent receives a request.

402
00:14:57,840 –> 00:15:00,640
Classify intent, call the right downstream tool,

403
00:15:00,640 –> 00:15:03,080
transform the payload, apply business policy,

404
00:15:03,080 –> 00:15:05,560
and return an answer with citations for audit.

405
00:15:05,560 –> 00:15:08,560
In logic apps, we front it with the built-in HTTP trigger

406
00:15:08,560 –> 00:15:09,480
for throughput.

407
00:15:09,480 –> 00:15:12,880
First step, call a function that performs intent classification

408
00:15:12,880 –> 00:15:15,440
using your chosen model and a safeguarded prompt.

409
00:15:15,440 –> 00:15:17,640
That function returns a typed result.

410
00:15:17,640 –> 00:15:22,280
Tool equals service now ticket, confidence, and policy flags.

411
00:15:22,280 –> 00:15:25,360
Back in the workflow, we branch based on that typed output,

412
00:15:25,360 –> 00:15:27,480
not string matching on a chatty blob.

413
00:15:27,480 –> 00:15:29,080
Tool calls aren’t guesses.

414
00:15:29,080 –> 00:15:31,520
For service now, the connector covers the basics,

415
00:15:31,520 –> 00:15:34,760
but your enterprise requires a custom create or link incident

416
00:15:34,760 –> 00:15:37,160
with enriched context and the dup.

417
00:15:37,160 –> 00:15:40,000
The built-in connector can’t dup across your three instances.

418
00:15:40,000 –> 00:15:43,000
Fine, second function, did up logic that queries your index,

419
00:15:43,000 –> 00:15:44,400
applies your similarity threshold,

420
00:15:44,400 –> 00:15:46,280
and emits either an existing incident ID

421
00:15:46,280 –> 00:15:48,080
or a normalized create payload.

422
00:15:48,080 –> 00:15:50,360
Logic apps then invokes the service now connector

423
00:15:50,360 –> 00:15:52,520
with a payload that’s already compliant.

424
00:15:52,520 –> 00:15:54,960
No hacks, no hidden loops.

425
00:15:54,960 –> 00:15:57,520
Traceability is the difference between AI did something

426
00:15:57,520 –> 00:15:59,160
and we own the outcome.

427
00:15:59,160 –> 00:16:01,120
We stamp a correlation ID at the entry point

428
00:16:01,120 –> 00:16:04,240
and pass it to every function call and connector action.

429
00:16:04,240 –> 00:16:06,120
Application insights needs the whole story,

430
00:16:06,120 –> 00:16:08,520
classification function vector lookup service.

431
00:16:08,520 –> 00:16:11,440
Now dependency back to the workflow then outbound response.

432
00:16:11,440 –> 00:16:15,240
When legal asks, what did the agent do with ticket 39124?

433
00:16:15,240 –> 00:16:17,440
You open a single trace and show the evidence,

434
00:16:17,440 –> 00:16:20,680
not performative transparency, actual provenance,

435
00:16:20,680 –> 00:16:22,600
security posture stays clean,

436
00:16:22,600 –> 00:16:24,400
managed identities end to end.

437
00:16:24,400 –> 00:16:27,080
The logic app uses its identity to call the functions app

438
00:16:27,080 –> 00:16:28,520
through a private endpoint.

439
00:16:28,520 –> 00:16:31,320
The functions app uses its identity to access key vault,

440
00:16:31,320 –> 00:16:33,960
the vector database, and whatever else the policy allows.

441
00:16:33,960 –> 00:16:36,760
No secrets in run history, no shared maker tokens.

442
00:16:36,760 –> 00:16:39,240
Arbacs scopes each component to least privilege.

443
00:16:39,240 –> 00:16:40,840
If someone tries to call the functions app

444
00:16:40,840 –> 00:16:43,280
from the public internet, denied at the network layer.

445
00:16:43,280 –> 00:16:45,720
If someone helpfully adds a new output binding

446
00:16:45,720 –> 00:16:47,360
that writes to a public storage account,

447
00:16:47,360 –> 00:16:49,280
Azure policy blocks the deployment.

448
00:16:49,280 –> 00:16:52,200
You don’t debate it in a meeting, the platform enforces it.

449
00:16:52,200 –> 00:16:53,840
Now the low-code wall moment,

450
00:16:53,840 –> 00:16:57,120
your model provider updates an API, new headers,

451
00:16:57,120 –> 00:17:00,720
chunking rules, pagination behavior that returns partials,

452
00:17:00,720 –> 00:17:02,000
you must reassemble.

453
00:17:02,000 –> 00:17:04,400
In Power Automate, that’s a re-factor

454
00:17:04,400 –> 00:17:08,400
across scattered HTTP actions with fragile string manipulation.

455
00:17:08,400 –> 00:17:11,640
In logic apps, you update a function, version it.

456
00:17:11,640 –> 00:17:14,680
Test it, roll it forward behind a feature flag header,

457
00:17:14,680 –> 00:17:15,760
the workflow sets.

458
00:17:15,760 –> 00:17:18,520
If something misbehaves, you root a percentage of traffic

459
00:17:18,520 –> 00:17:20,840
back to the old function version for a sane rollback.

460
00:17:20,840 –> 00:17:23,720
That software engineering, not talismanic clicking,

461
00:17:23,720 –> 00:17:26,000
error handling doesn’t become fanfiction.

462
00:17:26,000 –> 00:17:27,560
Logic apps marks the step as failed

463
00:17:27,560 –> 00:17:30,080
with the functions, explicit error code and message.

464
00:17:30,080 –> 00:17:32,480
Durable retry kicks in with the jitter you specified.

465
00:17:32,480 –> 00:17:34,600
If the function indicates a business rule failure,

466
00:17:34,600 –> 00:17:36,320
say user lacks entitlement,

467
00:17:36,320 –> 00:17:38,000
you root to a human in the loop queue

468
00:17:38,000 –> 00:17:40,960
with the correlation ID and sanitized context.

469
00:17:40,960 –> 00:17:43,280
App insights tracks both the automated failure

470
00:17:43,280 –> 00:17:45,000
and the human resolution latency

471
00:17:45,000 –> 00:17:46,560
so you can optimize the bottleneck

472
00:17:46,560 –> 00:17:47,880
that actually costs you time.

473
00:17:47,880 –> 00:17:49,200
Performance matters here too.

474
00:17:49,200 –> 00:17:51,560
Stateless path for classification and tool routing.

475
00:17:51,560 –> 00:17:54,000
Stateful path for long running human approvals

476
00:17:54,000 –> 00:17:55,960
or multi-step compensations.

477
00:17:55,960 –> 00:17:59,120
You can scale, function separately from the workflow plan,

478
00:17:59,120 –> 00:18:00,920
allocate compute suited to vector math

479
00:18:00,920 –> 00:18:03,280
without overprovisioning the orchestration layer

480
00:18:03,280 –> 00:18:05,400
and keep P95 predictable.

481
00:18:05,400 –> 00:18:07,040
The agent remains responsive at the front

482
00:18:07,040 –> 00:18:09,560
while heavy lifting scales where it belongs.

483
00:18:09,560 –> 00:18:13,840
Outcome, AI agents that behave like services, not party tricks.

484
00:18:13,840 –> 00:18:15,760
Low code where it accelerates orchestration,

485
00:18:15,760 –> 00:18:17,680
code where it removes fragility,

486
00:18:17,680 –> 00:18:19,840
observability that lets you prove what happened,

487
00:18:19,840 –> 00:18:21,640
governance that survives and audit.

488
00:18:21,640 –> 00:18:24,640
And when the next, we just need one more field request arrives,

489
00:18:24,640 –> 00:18:27,680
you don’t rebuild a flow, you ship a function.

490
00:18:27,680 –> 00:18:28,680
Rebuttals.

491
00:18:28,680 –> 00:18:30,280
The three comfortable myths.

492
00:18:30,280 –> 00:18:31,680
Let’s clean up the three myths

493
00:18:31,680 –> 00:18:34,720
that keep otherwise smart teams glued to the wrong platform.

494
00:18:34,720 –> 00:18:37,480
Myth 1, per flow licensing is predictable.

495
00:18:37,480 –> 00:18:38,680
At small volume, sure.

496
00:18:38,680 –> 00:18:40,720
At enterprise volume, predictability dies

497
00:18:40,720 –> 00:18:44,200
by throttling, retries, and elongated run times you can’t tune.

498
00:18:44,200 –> 00:18:47,240
You pay twice, once in licenses again in missed windows.

499
00:18:47,240 –> 00:18:50,640
In logic apps, costs track to execution and in standard

500
00:18:50,640 –> 00:18:53,120
to allocate it compute you scale with intent.

501
00:18:53,120 –> 00:18:56,200
You can cap concurrency to protect dependencies and shapespent.

502
00:18:56,200 –> 00:18:59,760
predictability isn’t a price list, its control surfaces.

503
00:18:59,760 –> 00:19:02,720
Myth 2, connector parity means platform parity.

504
00:19:02,720 –> 00:19:05,840
No, same family of connectors, different enforcement domains.

505
00:19:05,840 –> 00:19:07,520
In power automate, the connector lives

506
00:19:07,520 –> 00:19:10,200
behind tenant-wide throttles and user bound connections.

507
00:19:10,200 –> 00:19:12,640
In logic apps, the same connector runs inside your plan

508
00:19:12,640 –> 00:19:16,440
with managed identities, vNet integration, and private endpoints.

509
00:19:16,440 –> 00:19:18,880
You attach it to policy, our back, and observability,

510
00:19:18,880 –> 00:19:21,360
parity on paper, divergence in production.

511
00:19:21,360 –> 00:19:23,800
Myth 3, the learning curve is too steep.

512
00:19:23,800 –> 00:19:25,800
Translation, we prefer convenient fragility

513
00:19:25,800 –> 00:19:27,680
to professional discipline.

514
00:19:27,680 –> 00:19:31,120
Source control, CI/CD, policy compliance, identities,

515
00:19:31,120 –> 00:19:33,560
and runtime diagnostics are not electives.

516
00:19:33,560 –> 00:19:36,320
They are how you stop incidents from turning into origin stories.

517
00:19:36,320 –> 00:19:39,240
The curve exists because reality exists.

518
00:19:39,240 –> 00:19:41,160
The good news is the tools are consistent.

519
00:19:41,160 –> 00:19:44,360
Arm, bicep, terraform, pipelines, app insights.

520
00:19:44,360 –> 00:19:48,640
Learn them once, apply them everywhere, objection, but DLP.

521
00:19:48,640 –> 00:19:50,440
DLP is helpful for citizen automation.

522
00:19:50,440 –> 00:19:52,640
It’s not observability, not network control,

523
00:19:52,640 –> 00:19:54,200
and not identity hygiene.

524
00:19:54,200 –> 00:19:57,640
Governance is logs, metrics, traces, our backscopes,

525
00:19:57,640 –> 00:20:00,680
policies that auto-deny drift and alerts with context.

526
00:20:00,680 –> 00:20:03,080
If your defense is we set a DLP boundary,

527
00:20:03,080 –> 00:20:05,480
you’ve described a guardrail, not a cockpit.

528
00:20:05,480 –> 00:20:07,960
Objection, we need one of 400 connectors.

529
00:20:07,960 –> 00:20:08,760
Wonderful.

530
00:20:08,760 –> 00:20:10,760
Use them from a platform that won’t sabotage you

531
00:20:10,760 –> 00:20:13,200
at 100,000 actions in five minutes.

532
00:20:13,200 –> 00:20:14,560
Logic apps.

533
00:20:14,560 –> 00:20:16,400
Standard gives you dedicated throughput,

534
00:20:16,400 –> 00:20:18,040
consumption with high throughput gives you

535
00:20:18,040 –> 00:20:19,560
burst capacity per workflow.

536
00:20:19,560 –> 00:20:22,280
The number of doors is irrelevant if the hallway is blocked.

537
00:20:22,280 –> 00:20:24,840
Objection, power automate can do approvals fast.

538
00:20:24,840 –> 00:20:25,920
It can and it should.

539
00:20:25,920 –> 00:20:27,400
Departmental winds belong there.

540
00:20:27,400 –> 00:20:29,520
This isn’t a religion, it’s risk accounting.

541
00:20:29,520 –> 00:20:31,640
Failed runs, silent slow downs,

542
00:20:31,640 –> 00:20:34,240
and throttled backlogs cost credibility.

543
00:20:34,240 –> 00:20:36,360
Auditors don’t accept the wizard said no.

544
00:20:36,360 –> 00:20:39,160
Executives don’t accept the platform slowed down.

545
00:20:39,160 –> 00:20:40,560
They want levers and receipts.

546
00:20:40,560 –> 00:20:42,160
Logic apps gives you both.

547
00:20:42,160 –> 00:20:44,160
Decision rule stated plainly,

548
00:20:44,160 –> 00:20:46,640
departmental convenience, power automate,

549
00:20:46,640 –> 00:20:49,280
enterprise integration hybrid, SLA’s logic apps,

550
00:20:49,280 –> 00:20:51,640
choose based on the blast radius you’re willing to own.

551
00:20:51,640 –> 00:20:54,120
If a missed approval annoys a team, fine.

552
00:20:54,120 –> 00:20:55,920
If a missed batch breaches a contract,

553
00:20:55,920 –> 00:20:59,640
stop pretending a convenience layer is an integration strategy.

554
00:20:59,640 –> 00:21:02,200
Practical framework, choose intentionally.

555
00:21:02,200 –> 00:21:03,680
You want a rubric, fine.

556
00:21:03,680 –> 00:21:05,880
If you need vnet integration, private endpoints

557
00:21:05,880 –> 00:21:09,440
as your arc or strictly controlled egress, choose logic apps.

558
00:21:09,440 –> 00:21:11,360
Otherwise, you’ll tunnel through a gateway

559
00:21:11,360 –> 00:21:12,960
and hope the spreadsheet where you track

560
00:21:12,960 –> 00:21:14,320
connections never goes stale.

561
00:21:14,320 –> 00:21:15,720
Hope is not a network pattern.

562
00:21:15,720 –> 00:21:18,600
If you need more than 100k actions per five minutes,

563
00:21:18,600 –> 00:21:21,800
explicit parallelism and stateless low latency parts,

564
00:21:21,800 –> 00:21:23,160
choose logic apps.

565
00:21:23,160 –> 00:21:24,520
Power automate will throttle.

566
00:21:24,520 –> 00:21:26,320
You’ll spend weekends staggering schedules

567
00:21:26,320 –> 00:21:28,360
to appease a ceiling you can’t move.

568
00:21:28,360 –> 00:21:30,680
Logic apps lets you set concurrency by action,

569
00:21:30,680 –> 00:21:32,760
isolate noisy neighbors and scale on signal.

570
00:21:32,760 –> 00:21:35,160
If you need pro code fallbacks, functions,

571
00:21:35,160 –> 00:21:36,840
custom connectors, inline code

572
00:21:36,840 –> 00:21:39,720
with real dependency management, choose logic apps.

573
00:21:39,720 –> 00:21:41,080
The moment your hand stitching headers

574
00:21:41,080 –> 00:21:43,480
and regecs in a designer to mimic a library,

575
00:21:43,480 –> 00:21:45,440
you’ve chosen technical debt.

576
00:21:45,440 –> 00:21:47,560
Move the computation to where code belongs,

577
00:21:47,560 –> 00:21:50,360
keep orchestration declarative and observable.

578
00:21:50,360 –> 00:21:52,440
If you need seam integration, granular R-back

579
00:21:52,440 –> 00:21:55,080
and policy-driven guardrails, choose logic apps

580
00:21:55,080 –> 00:21:56,600
in mid-locks to your CM.

581
00:21:56,600 –> 00:21:59,640
Enforce must be in a vnet, no public endpoints,

582
00:21:59,640 –> 00:22:02,280
managed identity required with Azure policy.

583
00:22:02,280 –> 00:22:05,880
Scope roles, so auditors have read, operators have deploy,

584
00:22:05,880 –> 00:22:08,080
identities have only the secrets they need.

585
00:22:08,080 –> 00:22:09,520
Governance isn’t a PDF.

586
00:22:09,520 –> 00:22:11,000
It’s enforced configuration.

587
00:22:11,000 –> 00:22:13,280
If you need simple M365 approvals,

588
00:22:13,280 –> 00:22:16,680
notifications and team automations, choose power automate.

589
00:22:16,680 –> 00:22:19,400
That’s its job, quick wins low friction, minimal ceremony,

590
00:22:19,400 –> 00:22:21,680
keep it inside strict DLP boundaries

591
00:22:21,680 –> 00:22:23,680
and don’t let citizen automations

592
00:22:23,680 –> 00:22:26,160
wander into mission-critical territory.

593
00:22:26,160 –> 00:22:27,920
Operating model that doesn’t implode,

594
00:22:27,920 –> 00:22:31,520
use logic apps with ARM, bicep terraform, pipeline every change,

595
00:22:31,520 –> 00:22:33,240
validate with pre-deployment tests

596
00:22:33,240 –> 00:22:36,240
and wire app insights with mandatory correlation.

597
00:22:36,240 –> 00:22:38,120
Use power automate for citizen automation

598
00:22:38,120 –> 00:22:39,280
in a fenced environment.

599
00:22:39,280 –> 00:22:41,360
Dedicated environment, DLP locked,

600
00:22:41,360 –> 00:22:43,440
connectors curated with a promotion path

601
00:22:43,440 –> 00:22:47,040
to logic apps when volume, sensitivity or complexity rises.

602
00:22:47,040 –> 00:22:50,280
Final stance, one more time for the people in the back.

603
00:22:50,280 –> 00:22:51,920
Connector counts are marketing.

604
00:22:51,920 –> 00:22:53,200
Architecture is destiny.

605
00:22:53,200 –> 00:22:55,000
Pick the platform that aligns with your risk,

606
00:22:55,000 –> 00:22:56,960
your volume and your auditors.

607
00:22:56,960 –> 00:22:58,520
Then commit, don’t split the difference

608
00:22:58,520 –> 00:23:00,480
and wonder why both halves hurt.

609
00:23:00,480 –> 00:23:02,320
Here’s the only line that matters.

610
00:23:02,320 –> 00:23:05,600
Connector quantity is irrelevant without enterprise plumbing.

611
00:23:05,600 –> 00:23:08,200
Logic apps bring scale, governance and hybrid.

612
00:23:08,200 –> 00:23:10,240
Power automate brings convenience.

613
00:23:10,240 –> 00:23:12,320
If you want the receipts and the how to subscribe

614
00:23:12,320 –> 00:23:15,160
for the TierDown series on logic apps, standard patterns,

615
00:23:15,160 –> 00:23:18,320
stateless versus stateful, functions integration done right

616
00:23:18,320 –> 00:23:20,800
and end-to-end tracing with application insights

617
00:23:20,800 –> 00:23:23,280
so you can prove causality, not guess it.

618
00:23:23,280 –> 00:23:24,920
Then watch the cost modeling episode

619
00:23:24,920 –> 00:23:27,440
and the VINET and Azure ARC deployment walkthrough.

620
00:23:27,440 –> 00:23:30,360
Enable notifications so you don’t miss the benchmark updates

621
00:23:30,360 –> 00:23:33,000
when we push new limits and publish the dashboards.

622
00:23:33,000 –> 00:23:34,160
Do the efficient thing now.





Source link

0 Votes: 0 Upvotes, 0 Downvotes (0 Points)

Leave a reply

Join Us
  • X Network2.1K
  • LinkedIn3.8k
  • Bluesky0.5K
Support The Site
Events
November 2025
MTWTFSS
      1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
« Oct   Dec »
Follow
Search
Popular Now
Loading

Signing-in 3 seconds...

Signing-up 3 seconds...