Sean Yu

IoT Specialty/Microsoft MVP/MCT

Cloud Iaas, Paas, Saas,云原生一网打尽


Monitor Azure Functions send email when Error,监控Azure Function当出错时发送报警

本文介绍: 当Azure Functions执行失败时发送报警。   视频介绍: 图文介绍: 1.准备一个可以执行出错的Azure Functions并部署: (这部分内容讲过很多次了,可参照本博客中其他的文章,本文不再赘述)。 本例子中使用了默认的http 触发的 python Functions,修改functions中的代码,当http触发传递的参数不包含“name”时,执行1/0操作,故而报错异常。 代码如下: import logging import azure.functions as func def main(req: func.HttpRequest) -> func.HttpResponse: logging.info('Python HTTP trigger function processed a request.') name = …

Azure Monitor Azure Functions Python

Export Azure Functions Invocation Traces log,导出运行日志

本文介绍: Azure Functions 执行过程中产生的日志默认记录在了Application Insights里。这也是我们创建Functions时会自动创建一个Application Insights的原因,如下图Functions 自带一个Application Insights:   Azure Functions代码中的log相关的内容都可以在Functions 的Monitor页面查询到,注意查询结果可能出现5分钟延时。 如果我们想导出这些日志,可以点击Query in Application Insights页面,在application insights页面里导出数据:     切换到Application Insights Logs查询页面,即可导出数据:

Azure Application Insights Azure Functions Log

Azure Functions Error Value cannot be null. (Parameter 'provider')

在初次调试Azure Functions时,可能会遇到如下错误: Value cannot be null. (Parameter 'provider') 或者 connect Econnrefused 127.0.0.1:9091       此问题初步判断为网络异常导致了文件下载失败,可以开启更多调试日志查看是否为文件下载失败导致的,可以打开更多日志查看是否是文件下载故障: 步骤: 在VS Code中修改.vscode\launch.json和tasks.json文件中的启动命令 在launch.json和tasks.json中的 host start 后增加 --verbose 参数: { "version": "0.2.0", "configurations": [ { "name": "Attach to Python Functions", …

Azure Azure Functions Python

Azure Functions Blob Trigger 触发已经存在的文件的处理方式

在使用Azure Functions Blob Trigger 时,会出现container里已经存在的blob会触发functions执行,但我们想只针对新上传的文件进行触发。   原因: Azure Functions Blob trigger是通过blob 回执判断某个blob是否已经执行过触发,blob回执记录在AzureWebJobsStorage这个storage account中, 该storage account 配置在local.setting.json中:   触发后,会在云端Storage Account中的azure-webjobs-hosts中看到如下图的回执记录: 因为回执记录里不包含之前存在的文件,故而会依次触发已经存在的文件,直到全部触发一遍。   针对此问题,可以使用 事件网格触发器  代替 blob 触发器, 参考文档: https://docs. …

Azure Functions Azure Functions Python Trigger

使用MQTT 连接Azure IoT Hub

本文介绍: Azure IoT Hub 对MQTT的支持; 使用MQTT 而不用Azure IoT Hub Device SDK 连接IoT Hub并双向通讯; 使用Azure IoT Hub 的 Device SDK时,SDK封装了常见的 设备到云的消息,从云端控制设备,设备孪生属性等相关操作, 无需关注MQTT中的主题订阅。 IoT Hub必须使用TLS/SSL,因此IoT Hub不支持端口1883通讯,默认采用8883。 IoT Hub 不是完整的MQTT 服务,并没有支持MQTT 3.1.1规范中的所有行为。 IoT Hub 的设备SDK默认使用 Qos 1与IoT Hub交换消息, CleanSession标志默认为0; SDK中的默认超时时间及其是否可配置: 语言 默认的 keep-alive 时间间隔 可配置性 …

Azure IOT Video IoT Hub MQTT


Azure VM Guest host update- Azure 虚拟机安全更新

本文介绍Azure 虚拟机安全更新,同时适用于Windows 和Linux 操作系统。 本文参照:https://docs.microsoft.com/zh-cn/azure/automation/update-management/overview 视频介绍: 图文介绍: 单台虚拟机设置安全更新: 在虚拟机左侧菜单中选择 来宾和主机更新,点击转到更新管理。 按照提示选择或创建新的 log analytics 工作区和automation account即可。 多台虚拟机设置安全更新: 多台虚拟机统一管理的思路与单台一致,大体逻辑如下: 创建log analytics 工作区; 创建 automation account; 在automation account中设置 更新用的 log analytics 工作区; 在 …

Azure Video Cloud VM Security Update

Azure front door- 强制http redirect to https

本文属于Azure front door系列文章: 《Azure front door入门案例(1)-将流量路由到离用户最近(时延最低)的后端》 《Azure front door入门案例(2)-配置自定义域名》 本文介绍: Azure front door 的入门配置案例:为azure front door 强制修改http 跳转到https 上一篇中我们介绍了 为front door 配置了自定义域名 www.shawndemo.net , 配置完成后,可以使用 http://www.shawndemo.net 访问 网站,但是使用https://www.shawndemo.net 则会出现如下图不安全提示,此提示是因为 我们尚未给front door 的 自定义域名配置https。 视频演示: 图文演示: 1. 在 …

Azure Video Cloud Network Front Door

using azure bot framework composer design a get weather bot

本文介绍通过机器人框架设计器 (Bot framework composer)接近拖拉拽的方式设计一个聊天机器人,该聊天机器人的主要功能是发起http请求查询天气。当然,稍微变通下,可以用来查询几乎任何你想查询的内容,比如是否有新的日程,比如查询订单系统等等。 本文参照文档:https://docs.microsoft.com/zh-cn/composer/introduction 本文使用了一个模拟的天气查询api,该api提供北上广深的天气查询,其余城市返回404,具体见下图: 我们准备了一个测试用的API地址: http://get-weather-api.azurewebsites.net/api/GetWeatherByCityName?name=shanghai2 注意,如果测试API不可用,可以下载源码并自行部署:https://github.com/sean8 …

Azure AI Cloud Bot Framework Bot Service

Azure front door- 配置自定义域名custom domain

本文属于Azure front door系列文章: 《Azure front door入门案例(1)-将流量路由到离用户最近(时延最低)的后端》 《Azure front door入门案例(2)-配置自定义域名》 本文介绍: Azure front door 的入门配置案例:为azure front door 配置自定义域名。 上一篇文章中,我们配置了Azure front door 前端域名 sean-app.azurefd.net 并且已经可以使用该域名访问后端服务,但大部分场景下,我们不会使用默认的前端域名 xxx.azurefd.net的域名,而是要使用我们自定义的域名,例如 www.xxx.com。 本例中,我们将注册 shawndemo.net 的域名,然后配置 www.shawndemo.net cname到 azure …

Azure Video Cloud Network Front Door