Replies: 1 comment
-
|
Hello @HHobeck! Sorry for the delayed response, happy to help.
We use Azure Application Insights. I think earlier we used Google Analytics. I haven't been there where the decision for Azure Application Insights was done, and I have not checked the alternatives, but Application Insights works fine in general.
Basically Azure Application Insights provides a REST endpoint where you need to send the events in a specific (simple) format. Each event has a name, some common properties, custom properties (key/value pairs) and custom metrics (key/number pairs). You can send these to the endpoint via simple HttpClient calls (this is what we do from Reqnroll runtime) or there is also a These endpoints are public, no special authentication is required to send data to them. We generally have two endpoints: the debug and the prod. By default the code is configured to send to the debug, but for release builds we reconfigure it to use the prod endpoint with a build task. This way the debugging, local testing does not influence the stats and we can use the debug endpoint to test telemetry itself.
Azure Application Insights can only be hosted in Azure (i think), currently it is hosted within my own azure subscription, but my plan is to move it out to a standalone one. But it is not free, in the last 8 months we have spent ~500 USD, which has been paid by my company so far, but the plan is to pay it from the sponsorship we get.
The reports are not generated automatically, but the ones based on Azure Application Insights could be. Application Insights supports KQL (Kusto Query Language) that is an SQL like query language. For each sub-report, like ".NET Framework Usage", I have a KQL query that splits out the numbers, that I just include to the monthly post. Application Insights has an own API, so I'm sure those queries could be executed from the API as well, and that part of the report could be generated automatically, but I haven't spent the time for that yet (and our report also contains Google Analytics website data and some sponsorship summary that is from a third source, so for us it is a bit more complicated).
The telemetry in VS extension is at https://github.com/reqnroll/Reqnroll.VisualStudio/tree/main/Reqnroll.VisualStudio/Analytics, The KQL queries are not in the project, but I can share them with you if it helps.
You can find the related data sending details in the codebase above, and I can share the KQL queries. Just as an example, here is how the CI/CD server usage query looks like: We can have an online chat where I can show the things live, if that helps. Drop me a mail to gaspar🐌specsolutions.eu. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Hi @gasparnagy!
I really like the transparency reports/statistics you publish for Reqnroll. We’re discussing something similar for GitVersion and I was wondering: how did you implement the reporting pipeline?
Mainly curious about:
We’re especially interested in automated monthly report generation (possibly via GitHub Actions) containng the following information:
We’d love to learn from your experience before reinventing the wheel 🙂
Cheers!
Beta Was this translation helpful? Give feedback.
All reactions