Tools für Application Performance Monitoring (APM) sind die bevorzugte Wahl von Engineering-Teams, die nicht nur schnell Antworten auf Fragen suchen, sondern Probleme lösen wollen, bevor diese Benutzer:innen zu schaffen machen. Legacy-Lösungen im APM-Segment liefern dabei aussagekräftige Informationen zur Gesamt-Performance und zu den Fehlern aller Transaktionen. Allerdings haben nicht alle Transaktionen im Stack die gleiche Relevanz. Auch Funktionen, über die im Verhältnis weniger Traffic läuft, können für Ihre digitalen Geschäftsabläufe und UX absolut entscheidend sein. Dementsprechend sollten Schlüsseltransaktionen unabhängig vom allgemeinen Anwendungs-Throughput definiert und ins Monitoring genommen werden.
New Relic macht dies einfacher: Schlüsseltransaktionen sind nun Entitäten in der New Relic Observability-Plattform. So können Sie jetzt Ihre geschäftskritischen Transaktionen im Kontext aller anderen zugehörigen Entitäten einsehen und Ursachen für etwaige Probleme ohne Umschweife isolieren. Im Gegensatz zu Legacy-Lösungen müssen Sie sich so also nicht mehr durch ein Sammelsurium an Metrics ohne zielführenden Kontext arbeiten. Denn mit All-in-One-Observability von New Relic erhalten Sie Einblicke zu jeder Entität Ihres Systems, die Daten generiert. Weiter lässt sich in diesem Zuge auch klar analysieren, wie die jeweilige Entität mit allen anderen relevanten Aspekten zusammenhängt. Doch nicht nur Fehler lassen sich nun schneller beheben. Auch Änderungs-Rollouts und Performance-Optimierungen können mit Fokus auf UX-Vorteile präziser geplant werden.
In diesem Artikel beschreiben wir detailliert, wie Sie Ihre geschäftskritischen Schlüsseltransaktionen in New Relic einrichten, ihr Monitoring planen und zugehörige Events analysieren. Konkret gehen wir auf diese Punkte ein:
- Rasche Identifikation und Behebung von Problemen mit Relevanz für Uptime und Stabilität
- Instituierung von Engineering Best Practices für Schlüsselservices durch Tracking und Alerting von geschäftsrelevanten Änderungen
- Effiziente Umsetzung von Geschäftsvereinbarungen und Gewährleistung hoher Kundenzufriedenheit durch Definition von Service-Levels für Schlüsseltransaktionen
Monitoring geschäftskritischer Transaktionen: Der Ablauf
Stellen wir uns folgendes Szenario vor: Eine Kundin meldet sich bei einer E-Commerce-Anwendung an, weil sie ein Mobiltelefon kaufen möchte. Sie versucht, die Seite mit den verschiedenen Tarifen zu laden, die sich allerdings nur schleppend aufbaut. Warten ist angesagt … Unsere Kundin ist – wenig überraschend – unzufrieden, verlässt die Seite und sucht bei der Konkurrenz nach passenden Angeboten. Die meisten von uns würden wohl so reagieren. Das für PlanService
zuständige Microservice-Team muss die Ursache dieser Verzögerung schnellstmöglich ermitteln und beheben. Andernfalls gehen noch mehr Kund:innen verloren.
Zuerst sucht das Team nach der wichtigsten Geschäftstransaktion von PlanService
und findet sie: getPlans
(diese Transaktion lädt die Tarifseite). Anschließend richtet das Team die Transaktion als Schlüsseltransaktion für das Monitoring ein.
1. Schlüsseltransaktionen anlegen
Um getPlans
als Schlüsseltransaktion zu definieren, wählen Sie in den Transaktionsdetails die Option Make key transaction aus. Definition von Schlüsseltransaktionen, Tracking-Aufnahme und -Beendigung lassen sich auch mit der REST API automatisieren.
Im folgenden Screenshot sehen wir Details zur Transaktion getPlans
und zur Option Make key transaction.
Criticality Levels of Transactions
Criticality Level | Description | Criteria | Examples |
---|---|---|---|
Level 1 (Highest) | Transactions that are essential for the core operations of the organization. | Failure would result in significant financial losses, legal non-compliance, severe damage to reputation, or endangerment of human life. | Financial transactions in banking systems, healthcare record management, emergency response systems. |
Level 2 | Transactions critical for maintaining business continuity and fulfilling key operational requirements. | Failure could lead to substantial financial impact, operational disruptions, regulatory penalties, or compromised service delivery. | Order processing systems, inventory management, customer relationship management (CRM). |
Level 3 | Transactions important for supporting day-to-day operations and ensuring smooth functioning of business processes. | Failure may result in moderate financial losses, operational inefficiencies, delays in service delivery, or decreased productivity. | Employee payroll processing, email and communication systems, supply chain management. |
Level 4 | Transactions necessary for supporting non-critical functions or activities with minimal immediate impact on core operations. | Failure would cause inconvenience, minor financial losses, or temporary disruptions, but would not severely affect core business operations. | Employee expense reimbursements, non-urgent IT support tickets, internal collaboration platforms. |
Level 5 (Lowest) | Transactions with negligible impact on business operations if disrupted or delayed. | Failure would have minimal financial impact, limited operational consequences, and could be easily managed or mitigated. | Employee training registrations, non-essential system updates, personal file storage. |
Business transaction monitoring
Another crucial aspect of business criticality is business transaction monitoring. It enables organizations to analyze transactional data to ensure processes are performing as expected and to identify any deviations, anomalies, or issues that may arise. Business transaction monitoring offers several benefits to organizations, including:
-
Real-time visibility: Monitoring business transactions in real-time provides organizations with immediate insight into the performance and health of critical processes.
-
Early detection of anomalies: Transaction monitoring systems can detect unusual patterns or deviations from normal behavior, which may indicate potential fraud, security breaches, or operational errors.
-
Improved decision-making: Leaders can use transaction monitoring insights to optimize resource allocation, identify opportunities for process improvement, and make strategic decisions that drive business growth and competitiveness.
-
Enhanced compliance: Many industries are subject to regulatory requirements and compliance standards related to data security, privacy, and financial transactions. Business transaction monitoring helps organizations ensure adherence to these regulations by providing audit trails, compliance reports, and alerts for suspicious activities.
-
Optimized resource utilization: Transaction monitoring insights enable organizations to identify inefficiencies, streamline processes, and optimize resource utilization.
-
Customer satisfaction: Business transaction monitoring helps ensure smooth and reliable customer interactions by minimizing errors, delays, and service interruptions. This enhances customer satisfaction, loyalty, and retention, ultimately driving revenue growth and profitability.
Now, let’s look at how to monitor your business-critical transactions.
Set up your business critical transactions for monitoring
Let’s think about a scenario where a customer logs in to an e-commerce application to purchase a phone. The customer experiences slow response when trying to load the plans page to browse the services being offered. This results in the customer leaving the site and abandoning the purchase. The PlanService
microservice team needs to quickly identify the root cause of this slowdown and fix it to avoid losing more customers.
The team starts by identifying PlanService
’s most important business transaction: getPlans
(which loads the plans page). Then they need to set it up as a key transaction for monitoring.
1. Create a key transaction.
To make getPlans
a key transaction, select Make key transaction in the transaction details view. You can also automate this step by using the REST API to both create and stop tracking key transactions.
This screenshot shows the details of the getPlans
transaction and the option to Make key transaction.
Sobald eine Schlüsseltransaktion angelegt wurde, ist sie Bestandteil des Ökosystems für Entitäten in New Relic und wird nun in der entsprechenden Liste geführt.
Alle Schlüsseltransaktionen für Ihre Konten können Sie zentral einsehen. Wählen Sie hierzu All entities und dann Key Transactions, wie im folgenden Beispiel gezeigt:
In dieser Ansicht können Sie über die Filter entweder mehrere Konten oder ein einzelnes Konto aufrufen.
2. Schlüsseltransaktionen taggen
Mit Tags können Sie Ihre Schlüsseltransaktionen effizienter organisieren und filtern und somit zuständige Teams, Umgebungen und Prioritäten schneller bestimmen. Die Tags liefern zudem Kontextdetails, mit denen sich Probleme nach Eingang eines Alerts direkter identifizieren lassen.
Im folgenden Screenshot ist die getPlans-Schlüsseltransaktion mit vier Tags abgebildet. Der Umgebungstag zeigt an, dass diese Schlüsseltransaktion zu einer Entität in der Produktionsumgebung gehört. Damit lassen sich insbesondere Probleme isolieren und filtern, die für eine bestimmte Umgebung charakteristisch sind.
3. Schlüsseltransaktionen einem Workload hinzufügen
In New Relic lassen sich per Workloads Entitäten zu Gruppen zusammenfassen, die einen bestimmten Service ergeben. Durch eine solche Gruppierung können Probleme einfacher isoliert und behoben werden. Fügen Sie Ihre Schlüsseltransaktionen Workloads hinzu – zusammen mit den dazugehörigen Services und Hosts. So erhalten Sie eine Gesamtansicht über Health-Status und Aktivität der Entitäten, aus denen sich Ihr Stack zusammensetzt.
Der folgende Screenshot enthält eine umfassende Workload-Ansicht der getPlans-Schlüsseltransaktion mit allen anderen dazugehörigen Entitäten.
4. Alerts für eine Schlüsseltransaktion einrichten
Nun ist also Ihre Schlüsseltransaktion Teil eines Workloads und zudem mit einem Tag versehen. Im nächsten Schritt gilt es nun, Alerts einzurichten, damit Sie über alle ungewöhnlichen Vorgänge in Ihrer Transaktion benachrichtigt werden. Sie können Ihre Schlüsseltransaktionen mit Baseline-Alerts oder Anomalie-Alerts versehen – nutzen Sie dafür einfach das adaptive NRQL Alerting-System. Alerts definieren sowie Ihre Schlüsseltransaktionen in Dashboards visualisieren können Sie direkt über das jeweilige Diagramm.
Metrics zu Schlüsseltransaktionen sind eine Alias der ursprünglichen Transaktions-Metrics. Es werden also keine weiteren Daten verwendet. Nach Erstellung einer Schlüsseltransaktion verfügen Sie weiterhin über vollständige Retention für die ursprüngliche Transaktion. Wenn Sie dann das Tracking beenden, verschwinden die Metrics. Schlüsseltransaktionen lassen sich nahtlos in Ihre bestehenden Analysen einbinden. Da keine weiteren Daten erfasst werden müssen, entstehen auch keine zusätzlichen Kosten.
5. Service-Level für Schlüsseltransaktionen festlegen
Neben Alert-Thresholds lässt sich auch die Performance aus der Perspektive Ihrer Anwendungsbenutzer:innen messen. Legen Sie hierzu einfach Service-Level für geschäftliche Schlüsseltransaktionen fest. Als Orientierungshilfe dient dabei das Beispiel im folgenden Screenshot:
Fehler mit geschäftskritischen Transaktionen analysieren und beheben
Die getPlans
-Schlüsseltransaktionen sind nun eingerichtet und so können Sie zum nächsten Schritt übergehen: dem Monitoring. Als unsere Kundin aus dem vorherigen Beispiel die Tarife aufrufen wollte, die Seite aber nur sehr langsam geladen wurde, wurde ein Alert ausgegeben. Zudem traten Abweichungen bei der Reaktionszeit der Schlüsseltransaktion auf.
1. Abweichungen in allen Schlüsseltransaktionen lassen sich effizient mit New Relic Lookout analysieren. Mit diesem Tool erhalten Sie eine kontenübergreifende Ansicht Ihrer Transaktionen in Echtzeit. Dabei werden die Änderungen in Ihrer gesamten Telemetrie hervorgehoben. Im folgenden Screenshot ist eine getPlans-Transaktion abgebildet, die eine Zunahme der Reaktionszeit zeigt:
2. Wenn Sie die getPlans
-Schlüsseltransaktion aus der Ansicht in Lookout auswählen, erhalten Sie eine detaillierte Analyse. In diesem Screenshot ist zu sehen, dass die Reaktionszeit in den vergangenen fünf Minuten um 173 % zugenommen hat.
3. Wenn Sie die getPlans-Schlüsseltransaktion weiter analysieren, können Sie den Activity Stream heranziehen, um detailliertere Informationen zu den Änderungen im System zu erhalten. Der Stream enthält die aktuellsten Events wie etwa Alerts und Deployments mit Auswirkungen auf Ihre Transaktion.
4. Auch die Auswirkungen von Änderungs-Events lassen sich tracken, so zum Beispiel von Code-Deployments, Konfigurationsänderungen oder Business-Events. Verwenden Sie dazu einfach die Change Tracking Marker in den Diagrammen zu den Schlüsseltransaktionen. So lassen sich die Spuren weiter zurückverfolgen und die fehlerursächlichen Änderungen beheben.
Im nächsten Screenshot ist ein Anstieg bei der getPlans
-Transaktionszeit direkt nach einem Deployment zur Optimierung einer Datenbankabfrage zu sehen. Dadurch kann das Problem leichter bis zum Deployment zurückverfolgt werden. Als in diesem Beispiel die Änderung rückgängig gemacht wurde, stellte sich wieder eine normale Transaktionszeit ein und die Tarifseite wurden ebenfalls wieder schnell geladen.
5. Mit einer Service Map können Sie die Effekte der Performance-Verschlechterung bei getPlans
-Transaktionen besser nachvollziehen (siehe Screenshot unten). Auch der Health-Status aller anderen verknüpften Entitäten wie dem ursprünglichen Service, Hosts, Datenbanken und anderen Schlüsseltransaktionen lässt sich visualisieren.
Wenn Sie Transaktionen wie getPlans
als Schlüsseltransaktionen einrichten, stehen Ihnen auch die Telemetrie und der Kontext der Observability-Plattform von New Relic zur Verfügung. Fehler lassen sich so schnell beseitigen und die Performance Ihrer geschäftskritischen Transaktionen optimieren – und so Ihr Kundenerlebnis und Geschäftsergebnis.
Weitere Features in Kürze
Noch mehr Möglichkeiten für Ihre Schlüsseltransaktion in New Relic: In den kommenden Wochen und Monaten werden wir unsere Feature-Unterstützung für Schlüsseltransaktionen so weiterentwickeln, dass Sie geschäftskritische Transaktionen noch einfacher automatisch definieren, Schlüsseltransaktionen im Kontext von Distributed Tracing einsehen können und mehr Traces für das Debugging erhalten. Mithilfe von Berichten zur Analyse Ihrer Skalierbarkeit werden Sie evaluieren können, wie gut Sie für Traffic-Peaks wie Black Friday und die Weihnachtszeit gewappnet sind. Wie immer natürlich zentral integriert in New Relic, der Observability-Plattform für Ihr digitales Business.
Auch über Ihr Feedback zu Schlüsseltransaktionen in New Relic freuen wir uns natürlich. Übermitteln Sie es uns gerne jederzeit über die zugehörige Schaltfläche im oberen Navigationsbereich in New Relic.
Nächste Schritte
Geschäftskritische Transaktionen perfekt im Blick – jetzt nahtlos möglich in Ihrem New Relic Konto. Sie haben noch kein New Relic Konto? Hier können Sie sich kostenlos registrieren.
Die in diesem Blog geäußerten Ansichten sind die des Autors und spiegeln nicht unbedingt die Ansichten von New Relic wider. Alle vom Autor angebotenen Lösungen sind umgebungsspezifisch und nicht Teil der kommerziellen Lösungen oder des Supports von New Relic. Bitte besuchen Sie uns exklusiv im Explorers Hub (discuss.newrelic.com) für Fragen und Unterstützung zu diesem Blogbeitrag. Dieser Blog kann Links zu Inhalten auf Websites Dritter enthalten. Durch die Bereitstellung solcher Links übernimmt, garantiert, genehmigt oder billigt New Relic die auf diesen Websites verfügbaren Informationen, Ansichten oder Produkte nicht.