国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

5分鐘,通過Microsoft Flow管道磁帶應(yīng)用程序分析

netmou / 1837人閱讀

摘要:分鐘,通過管道磁帶應(yīng)用程序分析現(xiàn)在,讓我告訴你為什么這個(gè)前言本不是一個(gè)好主意,因?yàn)樗皇恰4送猓瑳]有多少人會(huì)使用該應(yīng)用程序。目前我有兩種類型的分析用于應(yīng)用程序啟動(dòng)時(shí)發(fā)送的分析,以及錯(cuò)誤用于發(fā)生錯(cuò)誤時(shí)發(fā)送的分析。

5分鐘,通過Microsoft Flow管道磁帶應(yīng)用程序分析

現(xiàn)在,讓我告訴你為什么這個(gè)前言本不是一個(gè)好主意,因?yàn)樗皇恰?/p>

對(duì)于我非常具體的用例,我想跟蹤我的桌面(VB.NET ......我知道,我正在學(xué)習(xí)C#)應(yīng)用程序是在客戶端計(jì)算機(jī)上啟動(dòng)的,以及在使用過程中發(fā)生的任何錯(cuò)誤。我不需要任何重要的分析,而且我沒有能力構(gòu)建RESTful API端點(diǎn)來接收分析(企業(yè)網(wǎng)絡(luò)等)。此外,沒有多少人會(huì)使用該應(yīng)用程序。

理想情況下,可以構(gòu)建一個(gè)可以使用Django,RoR或任何其他Web框架處理這些請(qǐng)求的API。它真的是要走的路,因?yàn)樗屿`活,你可以提供大量的資源,而且真的......這是一個(gè)漂亮的管道膠帶,超強(qiáng)力的解決方案。

另一方面,我需要一個(gè)快速而骯臟的解決方案來測(cè)試我的概念證明,并且沒有足夠的資源來設(shè)置Web服務(wù)器。所以,不用多說,我的解決方案!

首先,使用“ 收到HTTP請(qǐng)求時(shí)”觸發(fā)器創(chuàng)建新流。

列表中的第一個(gè)!

您可以為流指定所需的任何JSON模式。目前,我有以下架構(gòu):

datetime ?- 這個(gè)應(yīng)該是相對(duì)不言自明的。
type ?- 目前我有兩種類型的分析:boot? - ?用于應(yīng)用程序啟動(dòng)時(shí)發(fā)送的分析,以及錯(cuò)誤? -?用于發(fā)生錯(cuò)誤時(shí)發(fā)送的分析。
error_message ?- 也很明顯不言自明。
error_value ?- 發(fā)生錯(cuò)誤的堆棧跟蹤。
application_version ?- 再次,是的。
ip ?- 實(shí)際上用于操作系統(tǒng)版本(我需要更改它,我知道)
guid ?- 應(yīng)用程序生成的通用標(biāo)識(shí)符(可以輕松跟蹤有多少用戶發(fā)送分析)

{
? "datetime": "3/28/2019 9:16:58PM",
? "type": "boot",
? "error_message": "",
? "error_value": "",
? "application_version": "1.1.0.0",
? "ip": "Microsoft Windows NT 6.1.7601 Service Pack 1",
? "guid": "bc6a61af-5ddf-4cb3-a9dc-b734b4c93957"
}

我的示例有效負(fù)載,注意我不可思議的懶惰,沒有將ip更新為相關(guān)的名稱,如版本。
您可以快速將樣本JSON有效負(fù)載放在一起并將其提供給Flow觸發(fā)器。它會(huì)生成它自己的架構(gòu)來處理它,它有多整潔!

轉(zhuǎn)儲(chǔ)示例JSON有效內(nèi)容后,您的流應(yīng)該是什么樣子。(注意:在保存項(xiàng)目之前,不會(huì)填寫HTTP POST URL)

現(xiàn)在,所有要做的就是將數(shù)據(jù)放入您想要使用的任何存儲(chǔ)介質(zhì)中!Flow具有Postgres,MySQL,SQL Server,一堆Azure內(nèi)容的連接器,甚至更多。您甚至可以使用本地?cái)?shù)據(jù)網(wǎng)關(guān)將本地SQL Server實(shí)例連接到流!(https://docs.microsoft.com/en-us/power-bi/service-gateway-onprem)。

為了這個(gè)例子,我創(chuàng)建了一個(gè)SharePoint列表來快速存儲(chǔ)數(shù)據(jù)。但嚴(yán)肅地說,這些數(shù)據(jù)應(yīng)存儲(chǔ)在某種適當(dāng)?shù)臄?shù)據(jù)庫(kù)中。

SharePoint列表的示例模式。不要使用SharePoint,它絕對(duì)不是存儲(chǔ)這些數(shù)據(jù)的正確方法!

將流量連接到您選擇的數(shù)據(jù)存儲(chǔ)也非常容易。只需從列表中選擇它,您就可以神奇地顯示示例模式中的所有JSON對(duì)象,以便將它們添加進(jìn)來!

非常簡(jiǎn)單!

我還使流程在成功接收請(qǐng)求后返回HTTP狀態(tài)代碼200。它位于數(shù)據(jù)存儲(chǔ)的并行分支上。您可以讓它返回您想要的任何內(nèi)容,但是我保持簡(jiǎn)單,因?yàn)閼?yīng)用程序確實(shí)不需要從服務(wù)器獲取任何數(shù)據(jù)。

返回... .Success的HTTP狀態(tài)代碼200!

所以,在你完成所有這些之后,你應(yīng)該準(zhǔn)備好節(jié)省流量。這將生成可用于POST到流的URL。如果提交的JSON模式與提供的樣本有效負(fù)載不匹配,則流程甚至?xí)祷?XX狀態(tài)代碼,以便讓您知道出現(xiàn)問題!如果您已經(jīng)按照這個(gè)快速教程進(jìn)行操作,那么您的流程應(yīng)該類似于此(除非沒有SharePoint!):

希望你的流程與此非常相似!

您現(xiàn)在可以啟動(dòng)您喜歡的編程語(yǔ)言,或Postman來測(cè)試API端點(diǎn)!Postman非常方便您測(cè)試您的新奇,管道膠帶的想法是否有效。只需復(fù)制并粘貼保存流時(shí)生成的HTTP POST URL,然后將示例模式粘貼到請(qǐng)求正文中,如下所示:

包含我的樣本有效負(fù)載的POST請(qǐng)求 服務(wù)器響應(yīng)HTTP狀態(tài)碼200!成功!

如果您查看存儲(chǔ)數(shù)據(jù)的任何位置,您應(yīng)該會(huì)看到一個(gè)包含您發(fā)送到服務(wù)器的數(shù)據(jù)的新條目!

雙重成功!有用!

您還可以實(shí)時(shí)測(cè)試流量,并調(diào)查早期彈出的任何問題。只需按下右上角的測(cè)試按鈕,然后使用Postman發(fā)送POST。

好哇!

就是這樣。管道膠帶分析在5分鐘以內(nèi)!你也可以使用Flow做更多的事情。您可以在其中添加一些if語(yǔ)句來分隔不同類型的分析并將它們存儲(chǔ)在不同的表中,或者在發(fā)出特定類型的請(qǐng)求時(shí)將通知發(fā)送到您的電子郵件。天空是極限!

但是要警惕這種方法的缺陷。它絕對(duì)不是為大量數(shù)據(jù)而設(shè)計(jì)的,我不確定該URL是否是100%靜態(tài)的。無論哪種方式,只要您認(rèn)識(shí)到陷阱,這對(duì)于一些簡(jiǎn)單的分析來說就是一個(gè)簡(jiǎn)單的解決方案。

示例代碼
下面是VB和Python中用于項(xiàng)目的一些示例代碼!

快樂編碼:)

Public Class ApplicationTracking
??? Public Sub New()
??? "Do nothing, I"m sure you could do something neat here :)
??? End Sub

??? Public Async Function Post(Optional callType As String = "boot", Optional errorMsg As String = "", Optional errorVal As String = "") As Task(Of Net.HttpStatusCode)
??????? "Generates JSON POST string
??????? Dim url As String = "YOUR MICROSOFT FLOW URL HERE"
??????? Dim postData As String = """datetime"": ""{0}"", ""type"": ""{1}"", ""error_message"": ""{2}"", ""error_value"": ""{3}"", ""application_version"": ""{4}"", ""ip"": ""{5}"", ""guid"": ""{6}"""
??????? postData = String.Format(postData, DateTime.Now.ToString(), "boot", errorMsg, errorVal, "1.1.0.0", Environment.OSVersion, My.Settings.Guid)
??????? postData = "{" & postData & "}"
???????
??????? "Generates Request content w/ JSON string
??????? Dim content As New Net.Http.StringContent(postData, Text.Encoding.UTF8, "application/json")
??????? content.Headers.ContentType = New Net.Http.Headers.MediaTypeHeaderValue("application/json")

??????? "Sends the POST and returns the HTTP Status Code
??????? Using client As New System.Net.Http.HttpClient
??????????? Dim r As Net.Http.HttpResponseMessage = Await client.PostAsync(url, content)
??????????? Return r.StatusCode
??????? End Using
??? End Function
End Class

用于跟蹤的VB.NET類(需要引用System.Web.Extensions)

import requests
import datetime as dt
import platform

class AppAnalytics:
??? def __init__(self):
??????? #Nothing at the moment :)
??????? pass

??? def post(self, guid, post_type="boot", error_message="", error_value="", app_version="1.1.0.0"):
??????? payload = {
??????????? "datetime": dt.datetime.now().strftime("%Y-%m-%d %H:%M:%S"),
??????????? "type": post_type,
??????????? "error_message": error_message,
??????????? "error_value": error_value,
??????????? "application_version": app_version,
??????????? "ip": platform.platform(),
??????????? "guid": str(guid)
??????? }
??????? flow_url = "YOUR FLOW URL HERE"
??????? #Posts the payload to the url, requests automatically encodes the dictionary :)
??????? r = requests.post(flow_url, json=payload)
??????? #Returns the HTTP Status Code (You can use this to check it sent the data correctly)
??????? return r.status_code

用于跟蹤的Python類

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/761.html

相關(guān)文章

  • 5分鐘通過Microsoft Flow管道磁帶應(yīng)用程序分析

    摘要:分鐘,通過管道磁帶應(yīng)用程序分析現(xiàn)在,讓我告訴你為什么這個(gè)前言本不是一個(gè)好主意,因?yàn)樗皇恰4送猓瑳]有多少人會(huì)使用該應(yīng)用程序。目前我有兩種類型的分析用于應(yīng)用程序啟動(dòng)時(shí)發(fā)送的分析,以及錯(cuò)誤用于發(fā)生錯(cuò)誤時(shí)發(fā)送的分析。5分鐘,通過Microsoft Flow管道磁帶應(yīng)用程序分析 現(xiàn)在,讓我告訴你為什么這個(gè)前言本不是一個(gè)好主意,因?yàn)樗皇恰? 對(duì)于我非常具體的用例,我想跟蹤我的桌面(...

    yunhao 評(píng)論0 收藏0
  • 如何使用廣域網(wǎng)數(shù)據(jù)加速層備份到云端

    摘要:如何使用數(shù)據(jù)加速層軟件定義的廣域網(wǎng)備份到云端,以及人工智能,都是這個(gè)城市的話題,但它們?cè)诳焖僭苽浞莺突謴?fù)方面有其局限性。因此,組織可以使用帶有廣域網(wǎng)數(shù)據(jù)加速覆蓋的廣域網(wǎng)來關(guān)注服務(wù)的連續(xù)性,而不必處理災(zāi)難恢復(fù)。如何使用WAN數(shù)據(jù)加速層tweet(tweet)軟件定義的廣域網(wǎng)(sd-wans)備份到云端,以及人工智能,都是這個(gè)城市的話題,但它們?cè)诳焖僭苽浞莺突謴?fù)方面有其局限性。然而,在sd-wa...

    tinna 評(píng)論0 收藏0
  • Node.js 指南(流中的背壓)

    摘要:在數(shù)據(jù)緩沖區(qū)已超過或?qū)懭腙?duì)列當(dāng)前正忙的任何情況下,將返回。當(dāng)返回值時(shí),背壓系統(tǒng)啟動(dòng),它會(huì)暫停傳入的流發(fā)送任何數(shù)據(jù),并等待消費(fèi)者再次準(zhǔn)備就緒,清空數(shù)據(jù)緩沖區(qū)后,將發(fā)出事件并恢復(fù)傳入的數(shù)據(jù)流。 流中的背壓 在數(shù)據(jù)處理過程中會(huì)出現(xiàn)一個(gè)叫做背壓的常見問題,它描述了數(shù)據(jù)傳輸過程中緩沖區(qū)后面數(shù)據(jù)的累積,當(dāng)傳輸?shù)慕邮斩司哂袕?fù)雜的操作時(shí),或者由于某種原因速度較慢時(shí),來自傳入源的數(shù)據(jù)就有累積的趨勢(shì),就像...

    Tony 評(píng)論0 收藏0
  • 云是下一件事嗎?

    摘要:云是長(zhǎng)期數(shù)據(jù)保留的下一個(gè)目標(biāo)嗎看看中的關(guān)鍵供應(yīng)商,對(duì)于這個(gè)時(shí)代的任何組織來說,數(shù)據(jù)是如何對(duì)業(yè)務(wù)需求和運(yùn)營(yíng)至關(guān)重要的,這是一個(gè)現(xiàn)實(shí)。一致性一致性允許您利用云和磁帶來根據(jù)組織的要求歸檔數(shù)據(jù)。云是長(zhǎng)期數(shù)據(jù)保留的下一個(gè)目標(biāo)嗎?看看spacetweet中的關(guān)鍵供應(yīng)商,對(duì)于這個(gè)時(shí)代的任何組織來說,數(shù)據(jù)是如何對(duì)業(yè)務(wù)需求和運(yùn)營(yíng)至關(guān)重要的,這是一個(gè)現(xiàn)實(shí)。Be it Education,F(xiàn)inance,Heal...

    lk20150415 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<