Vea haldus ja logiraamat hajutatud süsteemides Enn Õunapuu.

Size: px
Start display at page:

Download "Vea haldus ja logiraamat hajutatud süsteemides Enn Õunapuu."

Transcription

1 Vea haldus ja logiraamat hajutatud süsteemides Enn Õunapuu

2 Millest tuleb jutt? Kuidas ma näen, millises sammus erinevad protsessid parasjagu on? Kuidas ma aru saan, kas protsess töötab või on katkenud? Kuidas ma vea tekkimisel näen, millises süsteemis viga tekkis? Kuidas luua protsess selliselt, et vea kõrvaldamisel saaks protsess jätkuda? Kuidas ma tagan erinevate süsteemide vahel andmete terviklikkuse?

3 Hajusa süsteemi omapära veatootluse ja jälgitavuse seisukohalt

4 Tegevuste analüüs

5 Preliminaries: Data Logging Keeping track of execution data Activities that have been carried out Timestamps (Start and end times of activities) Resources involved Data Purposes Audit trails Disaster recovery Monitoring Data Mining Process Mining Process Simulation

6 Preliminaries: Process Mining Event logs (recorded actual behaviors) Covers a wide-range of techniques Provide insights into control flow dependencies data usage resource involvement performance related statistics etc. Identify problems that cannot be identified by inspecting a static model alone

7 Preliminaries: Process Simulation Develop a simulation model at design time Carry out experiments under different assumptions Used for process reengineering decisions Data input is time-consuming and error-prone Requires careful interpretation Abstraction of the actual behavior Different assumptions made Inaccurate or Incomplete data input Starts from an empty initial state

8 Process Mining Process discovery: "What is really happening?" Conformance checking: "Do we do what was agreed upon?" Performance analysis: "Where are the bottlenecks?" Process prediction: "Will this case be late?" Process improvement: "How to redesign this process?" Etc.

9 Process mining: Linking events to models world business processes people machines components organizations models analyzes supports/ controls specifies configures implements analyzes software system records events, e.g., messages, transactions, etc. process/ system model discovery conformance event logs

10 Where to start? process control diagnosis process mining process enactment process design implementation/ configuration

11 Veatöötlus harilikus rakenduses protected void Button5_Click(object sender, EventArgs e) { try { Label1.Text = Convert.ToString(Convert.ToInt32(TextBox1.Text) / Convert.ToInt32(TextBox2.Text)); } catch (Exception ee) { logger.error("ennu error message.jagamine nulliga"); Label1.Text = ee.message; } }

12 Jälgitavus Kuidas teada saada, mis hajutatud süsteemis toimub? Milline protsesside efektiivusus? Millised on vead ja eriolukorrad? Kuidas neid käsitleda?

13 Arutelu hajusa süsteemi näitel? Vaatleme krediitkaardiga maksmist. Kõik tundub lihtne. Kontrollitakse, kas on piisavalt vahendeid ja teostatakse makse. Süvenemisel, tekib terve rida eriolukordi, mis nõuavad lahendust. Mis teha siis, kui vastus ei saabunud õigeaegselt? Kuidas kontrollida, et maksja on krediitkaardi omanik?

14

15 nlog süsteem NLog is a logging platform for.net with rich log routing and management capabilities. It can help you produce and manage high-quality logs for your application regardless of its size or complexity. It uses familar logger pattern known from log4xxx.

16 Nlog järg NLog is very easy to use and configure, both through Configuration File and programmatically at runtime. Advanced routing options include buffering, asynchronous logging, load balancing, failover, and more. Log output options include: Files - single file or multiple, with automatic file naming and archival Event Log - local or remote Database - store your logs in databases supported by.net Network - using TCP, UDP, SOAP, MSMQ protocols Command-line console - including color coding of messages - you can receive s whenever application errors occur ASP.NET trace

17 nlog web page

18 Demo Remote desktop nloglogging

19 Google analytics Web analytics definition: The analysis of qualitative and quantitative data from your website and the competition, to drive a continual improvement of the online experience that your customers, and potential customers have, which translates into your desired outcomes (online and offline).

20 Demo

21 Jõudu!!!