Michał Jankowski

avatar

About Michał Jankowski

Microsoft MVP Azure, an architect, designer, team leader and trainer. He began programming in the early ’90s from Basic and Assembler for 8-bit computers. During most of his career, he was delivering .NET platform targeted application for the world’s largest companies. Currently, he is specialising in the development of web applications and Azure environment. A great enthusiast of software craftsmanship, unit testing, software design and other topics related to software development. In his free time, when he is not playing with the code, he likes travelling, photography and writing a technical blog.

Logowanie i monitorowanie kosztu zapytań w CosmosDB w Application Insights

Projektując aplikacje, które używają dokumentowej bazy danych CosmosDB bardzo często stajemy przed wyzwaniem oszacowania ich kosztu oraz ich późniejszej optymalizacji. Zadanie to nie jest trywialne. Jeśli chodzi o koszt to zawsze możemy użyć kalkulatora. Wystarczy, że podamy tam parametry rozwiązania (liczbę nowych dokumentów, odczytów, …) oraz wgramy przykładowe dokumenty. Po uzupełnieniu tych informacji otrzymamy estymację kosztu rozwiązania: […]

By |2019-03-03T23:33:04+01:003 marca 2019 |CosmosDB|0 Comments

Wysyłanie SMSów przy użyciu Azure Functions v2 – Twilio

Podobnie jak w przypadku wysyłania maili przy użyciu SendGrid-a zamieszczam opis sposobu integracji Azure Functions v2 z usługą Twilio. W tym przypadku musimy zainstalować pakiet Microsoft.Azure.WebJobs.Extensions.Twilio z repozytorium NuGet. Następnie wystarczy wykorzystać następujący kod: using Twilio.Rest.Api.V2010.Account; using Twilio.Types; public static class SendNotificationSMS { [FunctionName("SendNotificationSMS")] public static void Run( [TwilioSms( From = "Assigned by Twilio number", Body = "...")] out CreateMessageOptions messageOptions) { messageOptions = new CreateMessageOptions( new PhoneNumber("Phone number to which you would like to send message")); } } Nie jest to jednak wszystko. Oprócz tego musimy jeszcze dodać dwa wpisy do Application Settings: AzureWebJobsTwilioAccountSid AzureWebJobsTwilioAuthToken Wartości, które należy do nich [...]

By |2018-11-18T12:53:28+01:0018 listopada 2018 |.net, C#, Chmura|0 Comments

Wysyłanie maili z Azure Functions v2 – SendGrid

Jakiś czas temu opisałem jak można zintegrować usługę SendGrid z Azure Functions (artykuł: Wysyłanie maili z Azure Functions – SendGrid). Tekst jest cały czas aktualny, w szczególności jeśli chodzi o konfigurację samej usługi SendGrid. Dodać należy natomiast cześć dotyczącą integracji z Azure Functions v2. Od jakiegoś czasu wersja v2 funkcji jest już oficjalnie dostępna i wprowadza zmiany architektoniczne do środowiska. Do tej pory (wersja v1 funkcji) miała wbudowane w siebie elementy odpowiedzialne za integrację. Powodowało to, że za każdym razem, gdy Microsoft próbował coś zmienić w tych elementach musiał zmienić całą platformę. W wersji drugiej, rzeczy związane z integracją zostały wyciągnięte poza [...]

By |2018-11-18T12:36:36+01:0018 listopada 2018 |.net, C#, Chmura|0 Comments

Sprawdzanie pisowni w PowerPointcie – czyli jak zmienić język na wszystkich slajdach

Zastanawiam się jak często u Was trafia się taka mała rzecz, która mocno irytuje i myślicie, że nie można z nią nic zrobić. U mnie takim czymś było sprawdzanie pisowni w PowerPoint-cie. Obecnie wydaje mi się, że robiąc jakąkolwiek prezentację jedynym słusznym wyborem jest zrobienie jej w języku angielskim. I tu pojawia się drobna niedogodność w programie PowerPoint. Sprawdzanie pisowni potrafi płatać figle: […]

By |2018-07-27T19:20:38+01:0027 lipca 2018 |Konferencje / Prezentacje|1 Comment

FluentValidation.Validators.UnitTestExtension wersja 1.4

Nowa wersja pakietu FluentValidation.Validators.UnitTestExtension jest dostępna. Pakiet umożliwia tworzenie testów jednostkowych Fluent Validator-ów w sposób bardziej efektywny. W wersji 1.4 wprowadziłem następujące zmiany: wprowadziłem możliwość szybkiego testowania nowych walidatorów – EnumValidator, MaxLengthValidator, MinLenghtValidator, ExactLengthValidator, ExclusiveBetweenValidator oraz InclusiveBetweenValidator dodałem wsparcie dla .NETStandard 1.6 oraz .NETStandard 2.0 Projekt dostępny jest oczywiście na GitHubie.

Zdalne włączanie \ wyłączanie Azure Function

Dziś trochę inny temat. Czy zastanawialiście się kiedyś jak można wbudować w system możliwość wyłączania Azure Functions? Tak, aby nasza aplikacja była w stanie włączyć jakąś funkcję w miarę potrzeb i potem ją wyłączyć. Powodów takich wymagań może być wiele. Możemy przykładowo chcieć odroczyć przetwarzanie jakiś wiadomości do godzin nocnych, tak aby w trakcie dnia nasza funkcja nie obciążała elementu naszej infrastruktury. Innym dość często spotykanym pytaniem w trakcie różnego rodzaju meetupów lub hackatonów jest to czy jesteśmy w stanie w jakiś sposób wyłączyć funkcję automatycznie jeśli wykorzystamy darmową ilość wykonań funkcji. […]

By |2018-06-27T18:34:15+01:0027 czerwca 2018 |C#, Chmura|2 komentarze