《Windows Azure Platform 系列文章目录》
一.需求:
1.有1个Azure CLI的命令,叫
az storage file download --path --share-name [--account-key] [--account-name]
具体可以参考:https://learn.microsoft.com/en-us/cli/azure/storage/file?view=azure-cli-latest#az-storage-file-download
2.想了解执行上面这个命令后,是否有日志记录,具体的日志信息是怎么样的
二.假设
1.微软云Azure File Storage支持的协议有两种:
(1) SMB协议
(2) NFS协议
2.本文演示,主要使用SMB协议
三.环境搭建
3-1.创建存储账户
1.首先,我们登录https://portal.azure.com/,创建一个存储账户,名称为leistoragesamba01。
2.存储账户创建完毕后,我们点击该存储账户,点击File Shares
3.在弹出的窗口中,输入SMF File Share的名称。我这里命名为samba
4.创建完毕后,我们点击SMB共享名称samba,页面跳转
5.点击下图的Browse,点击下图的upload或者add directory
(1)Add Directory表示在smb共享里,心间文件夹,如下图的software文件夹
(2)Upload,表示在当前路径下,直接上传文件,如下图的1.txt, 2.txt和3.txt
(3)具体上传文件的步骤,就不做演示
3-2.创建LogAnalytics工作区(演示用)
1.Log Analytics是云端的日志中心,我们可以把云存储Azure Storage的日志,都发送到Log Analytics工作区里
2.我们在https://portal.azure.com,搜索log analytics workspace,如下图:
3.点击上图的Log Analytics Workspace,页面跳转后,点击下图的Create
4.我们这里设置工作区的名称为:lei-storagesamba-loganalytic。步骤略。
3-3.设置存储账户的监控
1.我们点击之前创建的存储账户名称:leistoragesamba01。页面跳转后,点击Monitoring里的Diagnostic Settings
2.点击下图的File这一行内容
3.点击后,页面会跳转,我们点击+ Add diagnostic setting。图略
4.按照下面的步骤,把诊断日志发送到Log Analytics里
四.演示
1.我们现在本地找一台Linux,安装Azure CLI,具体步骤请参考:https://learn.microsoft.com/en-us/cli/azure/install-azure-cli
2.我们在Azure Portal,找到存储账户的名称和秘钥,如下图
3.我们以我的演示环境里的存储账户为例
(1) 有1个文件夹叫software。在该文件夹里,有个1.zip文件
(2) 在根目录下,有三个文件,1.txt,2.txt, 3.txt
4.我们下载software文件夹里的内容,执行命令
az storage file download --path software/1.zip --share-name samba --account-name leistoragesamba01 --account-key [存储账户的秘钥]
5.我们下载1.txt文件,执行命令
az storage file download --path 1.txt --share-name samba --account-name leistoragesamba01 --account-key [存储账户的秘钥]
6.我们下载2.txt文件,执行命令
az storage file download --path 2.txt --share-name samba --account-name leistoragesamba01 --account-key [存储账户的秘钥]
4-2.查看监控数据
1.我们执行完毕后,所有的日志都发送到了Azure Log Analytics工作区里,我们点击之前创建的工作区,如下图:
2.上图中,我们可以看到,在新的工作区里有表StorageFileLogs,然后点击上如的Run执行。我们可以看到OperationName叫GetFile,具体的执行结果可以参考下面的截图:
3.可以看到几个属性
(1)OperationName,表示操作名称
(2)Uri,表示请求的samba文件链接
(3)CallerIpAddress,表示客户端的公网IP
(4)UserAgentHeader,表示客户端的信息,这里可以看到是用命令行工具