...
Info |
---|
|
Script
Info |
---|
Welcome to the course. Let's have a quick look at graph on and see what it does for us. Before we understand what graph funnel is we need to understand what telemetry is telemetry is the automatic recording and transmission of data from a remote or inaccessible source says to an I.T. system in a different location for monitoring and analysis. What this means is that sometimes you need get to get information from parts of your infrastructure or parts of your applications and websites that normally you cannot access easily. For example if you are running an e-commerce soft fit on your production environment you cannot debug it. So the code is kind of inaccessible in production so it's hard to understand which part of your code is is slow or when you are working with network hardware. It's hard to just monitor them while they are working. So what we do with telemetry is that we just put small bits of code for example in our applications and websites so they send data to a data source a data source is where you store your telemetry data and we will see very shortly what data sources we can use. So we put the small pieces of code in our application and while the application or website is in the production environment and it is on there load it sends small pieces of data to our data source for example it tells us that how many media scans it takes for a loop. For example command for connecting to database or for saving files to disk. How many milliseconds it takes to complete that operation so that data is a telemetry data and then we send the data to a data source and then we can work on it to analyze the data. An example of a telemetry data is for example average of time taken to connect to a database over time and we can grab this data to see if this is what slows down the application. And if we make some improvements. For example if we refactor the code and put the code back in production we can compare the data that is for before refactoring the code and after refactoring the code to see how we manage to improve the performance. Also you can do the same thing with your business not just with your application. For example you can receive a number of or theirs that you have per minute and compare it with last week or last month and then see if your business is the better or worse. Likewise you can again do the opposite. You can get the average value of refunds per day and then see by what you are doing to improve your business. Are you reducing the amount of refunds that you give back to customers or you are not doing well. So what's the challenge. The challenge is that nowadays organizations rely more and more on Tiller metric data because now systems are bigger. Normally now systems are built based on micros service architectures infrastructure is now normally on the cloud on a year or a double your services or whatever Google cloud they are removed and grabbing data is more difficult now. And the second big challenge is that companies have to bring data telemetry data from different data sources and merge them together so they make sense. Normally if you look at data in one data source they won't help you much unless you merge them with some other data in other parts of the business. For example do a number of calls that you get from clients in your customer service. You have to get that and then for example number of hours you spend on performing some kind of operation within your site or application and then look at them and say okay how I can improved application to reduce the number of calls I get from customers and they complain about the system so how we can for example reduce the number of complaints. Basically what I'm trying to say is that companies now try to manage the data that come from different data sources which is the third item. So you need different data sources you need more usually more than one data source to store different types of telemetry data give you one example. For example if you get some data from within your code in the production system. As I said if you want to see and to measure that one piece of code inside your application how many milliseconds will it take for that piece of code to complete in production. But at the same time you want to see if that slowness in your code is caused by your infrastructure. Imagine that you put your application on Amazon Web Services and then you want to see is it your the size of your AC 2 machines that causes the slowness. Is it the network. Do you need to scale up so that in that case you have to use for example a double cloud watch which is for monitoring infrastructure. You need to merge that data with the data that you get from your within your application. So in that case as you see you tell the metric data resides in two different data sources one is the one that comes from your application and one is the one that a WAC gives to you. Now graph on that comes to play graph China is a tool that either you can use it on the cloud without installing it or you can install it on your own servers. And this tool visualizes the time series data time series data is a kind of telemetry data that has a data and time attached to it at time series data must have a date or time attached to it for example first of January 2019 eleven twenty one am without that data on time you cannot visualize the data because you want to visualize that data over time obviously and graph China is really good at bringing data from different data sources and then put them on one dashboard right in front of you so you can understand what's going up and then not only you can create really nice looking dashboards You can also define alerts for example if the number of refunds goes above a certain number. If number of exceptions in your code goes above a certain number you can define layers and it will raise alerts then you can send alerts to a wide range of channels. For example you can send it to pager duty pager duty is a software as a service that is used to manage on call the road toll and things like that or you can just email the alert to people or send it to charts or team tools such as a slack and things like that. And also it's very extensible. There are a lot of plugins that are a lot of plugins for data sources. So if a data source is not supported out of the box by graph I know you can just go to a plug in market and get a plug in that is used for your desired data source. Many of the plugins are free. Some of them are paid. For example Oracle data source is not free but many other plugins are free. What you see in here is a visualization of a funnel itself. So what you see right in the middle is a dashboard that you will create with graph funnel. It can have gauges and different types of bar charts and graphs on the left and right. What you see are examples of data sources. These are not the only data sources that are supported by graph on. These are examples on the left you see graph fight graph fight is a data source that is generic and this is the main data source that we will use in this course. And moving forward I will show you how can how you can install it and use it. Cloud watch as I mentioned it's an Amazon Web Services service that gives you information about your infrastructure on the right side. We have elastic search which I will show you how you can integrate elastic search reading data from elastic search is good. If you use Cabana an elastic search for your logs and if you want to fetch log data and visualize them it's very useful in flux. The B is a data source similar to graph fight and it's for a story in Time series data. Again we have a subject on this one and I will show you how we can use the influx D.B. alongside funner. On top of this I will show you how you can use in my sequel how you can use Sequel Server and some other data sources when your data is already in the sequel server or my sequel by data. I mean time series data. Like any data that has data and time attached to it then it's a lot easier. You can just directly connect graph on out to that data and visualize them. Otherwise if you don't have that kind of time series data it's better to use something like graph fight or influx D.B. and then send a time series to them and then use them for visualization. So let's move on to the next topic and I'll show you how you can install graph on the. |