Home / Companies / Aviator / Blog / January 2023

January 2023 Summaries

6 posts from Aviator

Filter
Month: Year:
Post Summaries Back to Blog
To monitor and alert on Nginx ingress in a Kubernetes environment, users can install Prometheus and Grafana to collect metrics and visualize data. The kube-prometheus-stack Helm chart can be used to set up Grafana, Prometheus, and other monitoring components. Next, users need to install and configure Ingress Nginx, which involves installing the ingress-nginx controller and enabling metrics that can be scraped by Prometheus. Users can then create an ingress for a sample application and port-forward the ingress service to send traffic from their local terminal. To configure Grafana dashboards for Ingress Nginx monitoring, users need to import a dashboard, generate sample loads using Vegeta, and set up alerts for common SLIs such as 4xx error rate, 5xx error rate, high latency, and high request rate. Additionally, users can use alert templates in Grafana to make alert messages meaningful. The setup also involves integrating with Slack to receive alerts, which requires creating an incoming webhook from Slack. Overall, this setup helps developers monitor and alert on Nginx ingress in their Kubernetes environment, ensuring the stability and performance of their applications.
Jan 30, 2023 1,748 words in the original blog post.
Hashicorp's Terraform is a key tool for achieving DevOps goals by providing infrastructure as code solutions that enable collaboration, automation, and continuous improvement. It offers a declarative syntax, broad adoption across the industry, great support and community base, and a rich knowledge ecosystem. By adopting Terraform, software organizations can increase development and deployment velocity, achieve modular, scalable infrastructure as code deployments, and unlock scalable, resilient application infrastructure.
Jan 29, 2023 1,563 words in the original blog post.
DORA metrics aim to measure and compare DevOps performance by tracking five key indicators: Deployment Frequency, Lead Time for Changes, Change Failure Rate, Time to Restore Service, and Reliability. However, these metrics alone don't provide a complete picture of success, as they lack context and can be influenced by various factors such as team sickness or holiday periods. Moreover, DORA's framework doesn't offer solutions when the metrics change, creating uncertainty among developers. Additionally, teams may get stuck optimizing their metrics indefinitely, and comparing teams across different industries and workflows can lead to unrealistic targets and pressure on developers. Finally, DORA metrics don't account for the nature of success, which is often tied to delivering value to customers, rather than just creating impressive numbers. To effectively use DORA metrics, it's essential to contextualize them within your organization's working practices, product objectives, and business goals, and consider alternative metrics that better reflect your team's specific needs and success criteria.
Jan 18, 2023 1,764 words in the original blog post.
Git rebase and Git merge are two fundamental commands used for managing repository history in Git version control systems. Rebase re-sequences commits on top of a target branch, rewriting the commit history and creating new commit IDs, while merge joins two or more development histories together without rewriting commits. The choice between rebase and merge depends on the specific use case, such as when to synchronize a feature branch with the main branch, update a public branch, or squash intermediate commits. While both commands have their benefits and pitfalls, rebase offers streamlined commit history and the possibility to truncate unnecessary commits, but also requires caution when used on public branches due to potential rewriting of commit history and force push requirements.
Jan 13, 2023 1,419 words in the original blog post.
Flaky tests can be a significant source of frustration and wasted time for developers, causing them to lose focus and switch contexts, leading to additional delays. To address flaky tests, various strategies can be employed, including deleting or disabling the test, marking it as flaky, automating its re-run, dedicating a build step for it, or rerunning it automatically with retries. Additionally, teams can establish habits like working through an "engineering health" backlog to fix these issues, and tools like Aviator can automate cumbersome merge processes and manage cross-PR dependencies. Ultimately, the goal is to identify and address the root cause of flaky tests, rather than just masking their symptoms.
Jan 11, 2023 3,105 words in the original blog post.
The text discusses the importance of code coverage and its benefits, such as identifying overlooked code execution routes, indicating good, tested code with high coverage, promoting the use of code coverage principles while developing unit tests, increasing programmers' confidence, determining which sections of the code have undergone testing, and suggesting some rewriting for better speed. SonarQube is a Java-based open-source tool that enables code coverage and static code analysis to evaluate the reliability and security of a program. It provides customizable reports and a dashboard to show the quality of the code in an app. The article guides readers on how to use SonarQube with a simple JavaScript application, including setting up a new project, installing SonarScanner, running tests, and configuring SonarQube.
Jan 06, 2023 2,093 words in the original blog post.