地図あなたの問題!
11506 ワード
やあ、私はgiorgioラララです、そして、これは私の服従です.
これはまた、私の最初のポストです.
奇抜なワイルドカード
プロジェクトは3つのコンポーネントから構成されています. 問題イベントによって引き起こされて、自由でオープンソースGithubアクションによって供給されるGithubワークフロー イベントを受け取り、Azure ColorsDBに書き込む単純なAzure関数 Powerbiレポート世界地図上の最終的な問題を表示する!
YAMLパイプラインは2つのオープンソースGITHUBアクションを使用します. ワークフローが新しい問題(またはコメント)によって引き起こされるとき、最初のステップ
セカンドステップ
githubパイプラインからイベントを受け取り、OutputBindingを使用してColorsDBに書き込みます.
関数キーを使用してAzure関数を呼び出す必要があります
これは最初のpowerbiレポートの一つであるので、私はそれについて熟練していません、そして、どんな提案も歓迎されます!
問題があります.公開レポートでは、データはリアルタイムで更新されませんMicrosoft Docs そして、スケジュールのトリックhourly data refresh ).
しかし、DirectQueryでサポートされているデータソースを使用すると、この問題は解決できます.
最後に報告書を公開しますwebsite !
あなたは私のgithubリポジトリのコードをチェックアウトすることができます
地図あなたの問題
問題イベントによって引き起こされて、自由でオープンソースGithubアクションによって供給されるGithubワークフロー イベントを受け取り、Azure ColorsDBに書き込む単純なAzure関数 Powerbiレポート世界地図上の最終的な問題を表示する!
YAMLパイプラインは2つのオープンソースアクションを使用します. View on GitHub
次の日(私はいくつかのものをチェックした後)私はgithubリポジトリにもpowerbiレポートを公開します!
あなたが好きならば、Aを加えてください⭐ 特に書くissue , だから、ピンすることができます📌 あなたmap
これは明らかにいくつかの時間で開発された概念プロジェクトの単純な証明ですが、私は次の日/週に私は次のように改善しようとすると思います.
⬜ DirectQuery DataSourceを使用して、リアルタイムの更新に近い(またはSignalrとAzureマップを使用して完全なウェブサイトを開発します)
⬜ スケーラビリティを向上させるためのAzure側パイプラインの改良(例えばAzure Event Hub +他の情報源からのデータの充実)
⬜ すべてのGithubリポジトリの共有世界地図を作成!
⬜ 展開をスピードアップするスクリプトを作成する
⬜ テキストメッセージAIアルゴリズムを使用して、問題メッセージからデータを抽出します
✅ 機能認証キーでセキュリティを向上させる
これはまた、私の最初のポストです.
提出カテゴリ
奇抜なワイルドカード
動作方法
プロジェクトは3つのコンポーネントから構成されています.
ワークフローパイプライン
YAMLパイプラインは2つのオープンソースGITHUBアクションを使用します.
octokit/graphql-action
: ユーザの位置情報を問い合わせるsatak/webrequest-action
: JSONデータをAzure関数に投稿するには- uses: octokit/[email protected]
id: get_user_info
with:
query: |
query info($owner:String!) {
user(login: $owner) {
location
}
}
owner: ${{ github.actor }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
ユーザープロファイルから場所を抽出します.セカンドステップ
- uses: satak/webrequest-action@master
env:
USERLOCATION: ${{ steps.get_user_info.outputs.data }}
USERNAME: ${{ github.actor }}
REPOSITORY: ${{ github.repository }}
with:
url: 'http://0caad210bf6f.ngrok.io/api/ReceiveIssue'
method: 'POST'
headers: '{"x-functions-key": "${{ secrets.FUNCTION_KEY }}"}'
payload: '{ "location": ${{ env.USERLOCATION }}, "repository": "${{ env.REPOSITORY }}", "username": "${{ env.USERNAME }}" }'
完全なJSONペイロードを作成し、それをデータベースに格納するためにAzure関数に送ります.紺碧関数
githubパイプラインからイベントを受け取り、OutputBindingを使用してColorsDBに書き込みます.
関数キーを使用してAzure関数を呼び出す必要があります
x-functions-key
HTTPヘッダー.
[FunctionName("ReceiveIssue")]
public static async Task<IActionResult> Run(
[HttpTrigger(AuthorizationLevel.Function, "post", Route = null)] HttpRequest req,
[CosmosDB(
databaseName: "Github",
collectionName: "Issues",
ConnectionStringSetting = "CosmosDBConnection")] IAsyncCollector<Event> eventsOut,
ILogger log)
{
log.LogInformation("Received event");
try
{
string requestBody = await new StreamReader(req.Body).ReadToEndAsync();
dynamic data = JsonConvert.DeserializeObject(requestBody);
string location = data.location.user.location;
string repos = data.repository;
string username = data.username;
var eventObj = new Event()
{
Location = location,
Username = username,
EventDate = DateTime.Now,
Repository = repos
};
await eventsOut.AddAsync(eventObj);
return new OkObjectResult("Event inserted");
}
catch(Exception ex)
{
log.LogError(ex, "Error insert event");
return new BadRequestObjectResult("Event not valid");
}
}
パワーレポート
これは最初のpowerbiレポートの一つであるので、私はそれについて熟練していません、そして、どんな提案も歓迎されます!
問題があります.公開レポートでは、データはリアルタイムで更新されませんMicrosoft Docs そして、スケジュールのトリックhourly data refresh ).
しかし、DirectQueryでサポートされているデータソースを使用すると、この問題は解決できます.
最後に報告書を公開しますwebsite !
YAMLファイルとコードへのリンク
あなたは私のgithubリポジトリのコードをチェックアウトすることができます
SALME 84 / 地図あなたの問題
地図あなたの問題
このリポジトリには、問題点の世界地図を作成する新しい問題にトリガーされたGithub actionワークフローが含まれます.
動作方法
3つのコンポーネントから構成されています.
ワークフローパイプライン
YAMLパイプラインは2つのオープンソースアクションを使用します.
octokit/graphql-action
: Github GraphSQL APIを使用してユーザの位置情報を問い合わせるにはsatak/webrequest-action
: JSONデータをAzure関数に投稿するには次の日(私はいくつかのものをチェックした後)私はgithubリポジトリにもpowerbiレポートを公開します!
追加情報
あなたが好きならば、Aを加えてください⭐ 特に書くissue , だから、ピンすることができます📌 あなたmap
いいね
これは明らかにいくつかの時間で開発された概念プロジェクトの単純な証明ですが、私は次の日/週に私は次のように改善しようとすると思います.
⬜ DirectQuery DataSourceを使用して、リアルタイムの更新に近い(またはSignalrとAzureマップを使用して完全なウェブサイトを開発します)
⬜ スケーラビリティを向上させるためのAzure側パイプラインの改良(例えばAzure Event Hub +他の情報源からのデータの充実)
⬜ すべてのGithubリポジトリの共有世界地図を作成!
⬜ 展開をスピードアップするスクリプトを作成する
⬜ テキストメッセージAIアルゴリズムを使用して、問題メッセージからデータを抽出します
✅ 機能認証キーでセキュリティを向上させる
Reference
この問題について(地図あなたの問題!), 我々は、より多くの情報をここで見つけました https://dev.to/giorgiolasala/map-your-issues-52j0テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol