Blog Entries

22. 01. 2025 Alessandro Mizzaro Development, DevOps

Sign Like a Pro: A Simple Guide to GPG and Web of Trust for Commits

Some time ago, one of my colleagues wrote about git commits and why we should sign them (you should read this). But how can we actually do that? The Web of Trust of GPG comes to our aid. Let’s see how. OpenPGP is the open-source variant of PGP (Pretty Good Privacy), a protocol and software…

Read More
17. 01. 2025 Emil Fazzi Automation, Development, Documentation, Log-SIEM

Elasticsearch Magic: Achieving Zero Downtime during User Guide Updates

In a previous blog post by one of my colleagues, we shared how we developed a powerful semantic search engine for our NetEye User Guide. This solution uses Elasticsearch in combination with machine learning models like ELSER to index and query our documentation. While the proof of concept (POC) worked great, there was a challenge…

Read More
13. 01. 2025 William Calliari Development, Icinga Web 2, PHP

Plugin Systems and Capabilities

At the 36th Chaos Communication Congresses back before COVID forced a three year break, I attended a talk from the German tech-blogger Fefe. There he talked about the “nützlich-unbedenklich Spektrum” or in English, the useful – harmless spectrum. He argued that all software lies on that spectrum to some degree. Of course one could argue…

Read More
31. 12. 2024 Alessandro Taufer Development, DevOps

Tips for Writing Efficient Python Code

Writing high-performance code is key when tackling complex problems. While it might be tempting to focus on optimizing the programming language itself, the best strategy is often to implement the right algorithm. Let’s take a look at three lesser-known Python libraries that can boost your code’s efficiency without diving into complicated implementations. 1. Deque: The…

Read More
31. 12. 2024 Damiano Chini Automation, Development, DevOps

Maintaining Forks of Upstream Projects without git

When adopting an open-source software project that you don’t own, you may find it necessary to modify it partially to meet your specific requirements. However, as you implement those changes, it’s important to recognize that the upstream project will eventually update itself, leading to potential conflicts in the files that both you and the upstream…

Read More
30. 12. 2024 Damiano Chini APM, Development, NetEye

Supporting HTTP/2 and gRPC in nginx

Since its introduction the HTTP/2 protocol has been adopted more and more in servers and clients applications thanks to its improved performance compared to its ancestor HTTP/1.1. This poses an issue to services exposed via nginx, since some specific configurations are needed on nginx in order to allow clients and servers to fully use the…

Read More
27. 12. 2024 Damiano Chini APM, Development, Log-SIEM, NetEye

Elastic Universal Profiling – Profiling native code

In a previous post we went through the configuration of Elastic Universal Profiling in NetEye, seeing how we can profile applications written in programming languages that do not compile to native code (for example Python, PHP, Perl, etc.) But what happens if the application is written for example in C, Go or Rust? Let’s take…

Read More
23. 12. 2024 Damiano Chini APM, Development, Log-SIEM, NetEye

Continuous Profiling with NetEye – Elastic Universal Profiling

Elastic 8.16, which comes with NetEye 4.39, made Elastic Universal Profiling generally available for self-hosted installations. This means that NetEye SIEM installations will now be able to take advantage of the continuous profiling solution by Elastic. In this blog post we’ll explain what you can achieve with continuous profiling, and how you can configure it…

Read More
20. 12. 2024 Alessandra Castiglioni Atlassian, Development

Smart Confluence: Automating Actions Based on Text Content

In today’s fast-paced work environment, efficiency is paramount. Yet many Confluence users are missing out on a powerful time-saving feature: automation. Often overlooked, Confluence automation offers a robust toolkit to simplify workflows and improve collaboration among teams. This article looks at one of the most versatile aspects of Confluence automation: triggering actions based on text…

Read More
20. 12. 2024 Davide Sbetti Automation, Development, NetEye

When Less is More: NetEye Update and Upgrade Checkpoints

Hello everyone! Today, I’d like to briefly discuss an improvement to the update and upgrade procedures that we’ve started to adopt with NetEye 4.39! What we wanted to improve One aspect that made quite an impact was that whenever the update or upgrade procedure stopped, even for legitimate reasons such as rpmnew or rpmsave files,…

Read More
19. 12. 2024 Gabriele Bocchi Automation, Development, NetEye

NetEye Install and Upgrades: Moving to a Parallel Architecture

Hello everyone! Today, I’d like to share an exciting improvement we’ve made to the installation and upgrade procedures in NetEye, introducing a faster and more efficient parallel architecture! Why Modernize the Installation and Upgrade Processes? At Würth Phoenix, we strive to make NetEye not only powerful but also highly efficient and reliable for our users….

Read More
19. 12. 2024 Luigi Miazzo Automation, Development, DevOps

Embracing Idempotency: Writing Your Own Ansible Collection – From Code to Tests

Ansible is a powerful automation tool that simplifies the configuration, deployment, and management of systems. At its heart lies the concept of idempotency — the guarantee that applying the same operation any number of times will yield the same result. Writing your own Ansible collection can unlock a new level of customization and control for…

Read More
18. 12. 2024 Charles Callaway Documentation

Explaining Your Content with Complex Animations, Part 2

Hi again! At the end of my last blog I left you hanging. I promised some concrete examples of useful animations you could do in-house, using just math. And here I am, examples in hand! Although they could be finished animations in specific situations, they’re more likely to be parts of a larger picture, so…

Read More
18. 12. 2024 Mattia Codato Automation, Development, DevOps

GitOps: Push vs Pull? Choosing the Right Approach for Production Deployments

Starting a new project is often an opportunity to reevaluate established practices. In our case, deploying a containerized application to production with OpenShift led us to revisit our GitOps strategy. Using ArgoCD as our GitOps tool raised a fundamental question: What is the best way to move changes into production—push or pull? Understanding Push and…

Read More
16. 12. 2024 Alessandro Valentini Development, DevOps

NetEye and RHUI Repositories

Recently we had to provision a couple of NetEye machines on Azure for production purposes. Our procedure essentially creates a RedHat 8.10 VM starting with an official RedHat image, and adds the NetEye repositories to install the required software. This procedure is what we usually follow to create training environments, but these machines are usually…

Read More

Archive