这是我离线整理资料里的内容,大概是2012年时候开始使用此性能监控工具的,直到至今,接触到几个性能监控工具里,还是美国quest公司生产的Spotlight此产品相对比较牛!

我也不知道现在发展到能支持监控多少资源,我就拿我之前整理的文档所对应的的工具版本进行讲解,至于下载软件支持某个资源或者某些资源,请自行百度搜索:quest Spotlight,官网下载的版本是需要收费的,因此自行在网上搜索下载破解版本。

Spotlight可以监控很多很资源,相关如下:

Spotlight on web server  //web应用程序服务

Spotlight on Active Directory  //wwindows操作系统上的AD域应用程序服务

Spotlight on DB2  //DB2关系型数据库应用程序服务

Spotlight on MySQL  //mysql关系型数据库应用程序服务

Spotlight on Oracle  //oracle关系型数据库应用程序服务

Spotlight on SQL Serever  // SQL Serever 关系型数据库应用程序服务

Spotlight on Sybase ASE  // sybase OLTP关系型数据库应用程序服务

Spotlight on Unix/Linux  //Unix/Linux操作系统

Spotlight on Windows  //Windows操作系统

Spotlight on Exchange //Windows server操作系统上的微软的Exchange邮件服务器应用服务

Spotlight不需要在服务器端安装代理,只需要创建一些管理对象。

在这里我只对常用的几个进行安装、配置及简单使用做个介绍:

Spotlight on windows服务器监控

1、Spotlight on Windows 基于WMI 监控,防火墙需要开放TCP 135 、TCP 445 端口。

Windows防火墙开启WMI支持方法:组策略,计算机配置 ,管理模板 ,网络 ,网络连接 ,Windows防火墙 ,标准配置文件 ,允许远程管理例外,添加监控机IP地址。不建议关闭Windows防火墙。

2、监控机需要远程计算机的管理员帐号作验证,另外,网络访问方式要改成 经典-本地帐户的共享和安全模式 。如果需要使用 仅来宾 的验证方式,请把guest帐号加到administrators系统用户组内。监控时填写guest帐号,密码留空。

3、Spotlight 依赖Remote Registry 服务,请确认远程计算机已开启。

网上我查询了,对windows操作系统服务器监控写的比较详细的文章推荐:https://www.cnblogs.com/qmfsun/p/4838625.html

Spotlight on unix\linux服务器

1、被监控服务器为centos的linux操作系统为例,其他linux发行版本雷同,只是每个操作系统的linux命令不尽相同而已,先在服务器上创建一个用户,专门用于监控使用!

因为远程监控服务器,需要获取服务器的资源,所以必须要有权限。使用文档明确说明,不能使用root用户,但是我用其他已存在的用户也不行,所以只能创建一个新用户,方便起见就用spotlight作为用户名,设置如下:

  >> useradd spotlight

  >> passwd spotlight

  设置完密码就ok了。但是这个用户spotlight必须要有root权限才行,但这里我只是创建一个普通用户。如果创建具有root用户的权限,命令如下,同时建议密码稍微复杂一些:

>> useradd -g root -G root spotlight   //将spotlight用户赋予和root一样的权限。

或者直接编辑:vim /etc/passwd将spotlight用户的UID和GID改成0:0

  >> passwd spotlight

  设置完密码即可。

2、由于spotlight监控linux仍然使用linux的sysstat包,所有需要安装sysstat包。需要在服务器有监控工具,如sysstat

(1)检查是否安装sysstat包:rpm -q sysstat;

(2)如果没有,安装:rpm -ivh sysstat。

  完成即可

3、本地机器安装spotlight,创建监控信息如下

  进入Spotlight界面,进入File菜单点击Connect,进入如下界面:

双击Add New connection,进入创建一个新的监控链接如下:

输入被监控的服务器IP地址,spotlight用户账号及其密码,填充完OK即可。

4、监控信息如下:

Linux操作系统服务器的监控信息一目了然。

(1)、system

系统信息包括Linux版本、系统运行时间、现在时间

(2)、Network

包括连接数和宽带

(3)、CPU

用户使用cpu、系统使用cpu和剩余cpu;

其中还包括进程列队。

(4)、Memory

内存情况包括物理内存与虚拟内存的使用情况

(5)、Swap Files

交换文件的使用情况

(6)、Disk Activity

磁盘使用情况

(7)、Paging in /out

每秒内存页读入的数量。/每秒内存分页写入内存数量。是CPU与内存间的交互。

(8)、Swapping in rate / out rate

上面是页交换,这个是进程交互。

(9)、Disk I/O writes / reads

虚拟内存是在硬盘上划分出来的,当内存不足时物理内存会与虚拟内存交互,响应的会产生磁盘的I/O问题。

Spotlight on mysql监控mysql

首先要安装使用ODBC 3.5X的版本;

如果是安装在windows操作系统上,则请阅读:https://www.jianshu.com/p/fc92cf133899

如果安装在linux操作系统上,请阅读下面的内容:

potlight on mysql监控mysql时,需要执行iostat命令,所以需保证在目标linux服务器上安装iostat

没有安装iostat,故磁盘I/O统计,OS Performance page 和OS Details drilldown等将得不到显示。

yum install -y sysstat.x86_64

建立连接

点击connect后就可以查看监控效果了

1、Sessios会话
Total Users:总用户数
前连接到MySQL服务器的用户会话总数
Active Users:活跃用户
此控件表示连接到当前正在执行SQL语句或其他数据库请求的MySQL服务器的会话数
Active Sessions:活动会话数
当前正在执行SQL语句或其他数据库请求的当前连接会话的百分比

2、Host主机
Total CPU Usage:总的CPU使用率
此旋转器表示使用的CPU总量,随着CPU需求的增加,它旋转得更快,
如果系统的总CPU利用率超过一个阈值(CPU忙警报),警报就可以成为这个组件上的指令,
持续的CPU利用率高会对系统的性能产生不利影响
Run Queue:运行队列
运行队列显示等待CPU资源的任务数。当这个数超过CPU资源的数量时,CPU瓶颈就存在了
Memory:内存
Free Physical RAM:可用物理内存
这是可用的物理RAM,
如果可用的物理RAM是低的(低自由物理RAM警报),警报就可以在这个组件上成为指令

3、MySQL数据库
Sorts:分类
Sort Buffer Size:排序缓冲区大小
这是全球服务器设置sort_buffer_size价值。sort_buffer_size定义的可用内存,每次要执行排序,
如果排序需要比可用的更多内存,它将使用磁盘上的临时表来执行排序,
所显示的值是全局设置。个别会话可能会在个别基础上更改此参数
Rows Sorted:行排序
此控件显示MySQL服务器每秒排序的行数。它是基于服务器的状态变量的值sort_rows,
MySQL只报告在排序完成时排序的行数,因此如果执行一些长排序,则该统计量的值可能在短时间内周期性地急剧上升到非常高的值
per second:每秒
Query Cache:查询缓存
Status:现状
MySQL查询缓存的状态,有效值是:
OFF-查询缓存处于非活动状态,
ON-将缓存的选择比其他的sql_no_cache暗示,
需求-MySQL将缓存SELECT语句只包含sql_cache暗示
Size:大小
查询缓存的大小
Querirs:查询
MySQL查询缓存中当前包含的查询数
Free:空闲的
查询缓存中的空闲内存量
QC Hit Rate:查询缓存的命中率
在查询缓存中找到匹配选择的不需要执行的SELECT语句的百分比

查询缓存命中率警报
MySQL查询缓存存储MySQL数据库服务器执行的最近选择查询,
以及这些查询的结果集。
这可以减少大量的解析开销,以及逻辑和物理I/O,
如果查询重复的话,这些查询将与这些查询相关。
查询缓存命中率警报在MySQL查询缓存中找到的SQL查询比例低于指定阈值时触发。
您可以通过修改配置变量来调整查询缓存的性能:
更改查询缓存的大小或类型
更改可缓存的查询的最大大小
更改缓存查询的分配大小或最小块大小
Thread Pool:线程池
当前用于重新使用的连接线程的数目

4、InnoDB数据库引擎
Buffer Pool:缓冲池
Size:大小
InnoDB缓冲池缓存表中的数据,所以它不需要写磁盘的每一次,
此控件显示InnoDB缓冲池的大小,以兆字节为单位
Free:空闲的
在InnoDB缓冲池中没有包含数据的内存量,
在大多数系统中,这最终将达到0,
除非缓冲池足够大,以容纳从数据库中定期读取的所有数据
Hit Rate:命中率
在缓冲池中找到请求的数据块的时间百分比,避免了磁盘I/O,
较高的值表示良好的缓存有效性,
但是,如果应用程序执行大量的全表扫描,那么低值可能是正常的
Rows Processed:行处理
此度量显示插入、更新、删除和选择以每秒行表示的操作的速率,
它不包括排序的行率
per second:每秒
Log Buffer:日志缓冲区
Size:大小
在InnoDB日志缓冲区的大小,以兆字节为单位,
innodb日志缓冲区缓冲区写入InnoDB事务日志
IO Threads:IO线程
辅助线程执行InnoDB I/O数

5、Storage存储
Tablespace:表空间
在InnoDB表空间文件的总大小,这些文件中的空闲空间的总数,
注:
在这个版本中,
如果你使用一个表空间文件每个InnoDB表配置我们无法在表空间使用情况报告
Total:全部的
总的空间分配给InnoDB表为确诊的MySQL数据库,
对于InnoDB表空间配置参数的设置是通过在my.cnf文件[ mysqld ]段innodb_data_file_path选项或者在my.ini(Windows),
注意:聚光灯主页的刷新率可能会延迟显示该组件的准确值
Free:空闲的
残留在InnoDB表空间为确诊的MySQL数据库的可用空间,
表空间中的空闲空间量是由MySQL显示表状态命令返回的值之一,
注意:聚光灯主页的刷新率可能会延迟显示该组件的准确值
Auto Extend:自动扩展
在InnoDB表表可以设置为自动增长大小(自动)当他们成为全,
对于InnoDB表空间配置参数(包括AUTOEXTEND)是由在my.cnf文件[ mysqld ]段innodb_data_file_path选项或者在my.ini(Windows)的大小,
InnoDB表空间扩展可以通过设置innodb_autoextend_increment选项,
默认值是8,这corrresponds以固定增量8 MB
Logs:日志
InnoDB的事务日志。
注意:此组件目前没有附加值,仅显示为MySQL架构中的事务日志
数值的含义:数和在InnoDB存储引擎使用的日志组的日志大小,
在日志的日志文件组数设定在my.cnf文件[ mysqld ]段innodb_log_files_in_group选项,
默认值2,
在日志组中的每个日志文件的大小是由innodb_log_file_size,
具有5 MB的默认值,
价值观是由MySQL显示变量检索命令(见活动明细配置页)

读写流:

SQL Executions/s
SQL执行
此流显示客户机连接向服务器发送SQL语句或其他数据库请求的速率。
所有的数据库请求数,包括呼叫、显示、描述和设置报表。
但是,如果客户机发出一个调用语句,这只算作一个执行,即使存储过程调用执行多个SQL语句。
Data Send Rate
数据发送速率
此流表示从所有客户端发送数据到服务器的速率。
在此上下文中的数据包括命令包(例如SQL语句)以及发送到数据库中的数据。
高速率通常与高插入率有关。
Data Received Rate
数据接收率
此流显示数据从MySQL服务器发送到所有客户机的速率。
数据包可能包含返回代码和错误信息,但是从服务器向客户机传输的大部分数据通常是SELECT语句结果集的形式。
InnoDB Logical Writes/s
InnoDB的逻辑写的速度,
写操作是在InnoDB缓冲池中进行的,基于状态变量innodb_buffer_pool_write_requests。
InnoDB Logical Read Rate
InnoDB的逻辑读取率
逻辑读取请求的速率由InnoDB。这包括数据从InnoDB所有的要求,包括缓冲池中的数据和从硬盘读取的数据。
InnoDB Physical Writes/s
InnoDB物理写的
这种流动显示的速度,InnoDB的数据写入到磁盘上的表空间文件。
InnoDB Physical Read Rate
InnoDB物理读取率
物理I/O操作从InnoDB表空间文件到InnoDB缓冲池。
InnoDB Log Buffer Writes/s
InnoDB Log Buffer写的率在数据被写入到Innodb日志缓冲区。
InnoDB Log File Write Rate
innodb log文件的写入速度
这种流动显示的I/O速率InnoDB事务日志。

相关监控简介:

1、MySQL相关

1.1 Activity->Mutex 对应Show engine innodb mutex

1.2 Activity->InnoDB Status 对应 show engine innodb status;

1.3 Activity->Error Log 显示当前连接最近的一次报错,包括数据库的创建、启动,一个表的创建或者该check && repair,以及某个logfile的创建

1.4 Activity->General Log 以表格形式显示某客户端连接及断开的记录,以及各SQL statement

注:my.cnf里需设定参数log_output=table

1.5 Activity->Slow Query Log 以表格形式展示一个慢查询SQL语句

2 系统相关

2.1 OS Details->OS Performance 显示操作系统的cpu、磁盘I/O、memory等监控信息

2.2 OS Details-> OS Processes 显示当前活跃的进程

Spotlight on oracle监控oracle

1)首先要保证安装spotlight on oracle的机器上已安装oracle客户端工具。

安装Oracle客户端instantclient_11_2;

配置系统环境变量PATH和TNS_ADMIN都为instantclient_11_2的安装路径;

配置tnsnames.ora文件,将需要的数据库实例信息填写上,如下:

2)建立Oracle的连接

如果需要同步监控操作系统,则需要录入操作系统的用户名和密码;选择数据库客户端tnsnames.ora中配置的数据库;

注意:如果要同步监控OS,请确保Windows要用administrator账号,linux不能用root账号;

如果不需要同步监控OS操作系统,则不需要在“monitor OS”前打钩,如下图所示:

3)配置监控用户

设定oracle的连接用户(建议重新建立一个新的监控用户,不要使用系统实际账户)

在连接Oracle数据库前我们要先为待监控的数据库创建一个监控用户,通过这个监控用户来获取监控信息

在连接Oracle数据库前我们要先为待监控的数据库创建一个监控用户,通过这个监控用户来获取监控信息,

首先打开“file”->“OracleUser Wizard”界面,如下图所示:

4)系统主界面

系统主界面反映了系统的整体运行情况,如果系统哪方面出现问题,会报相应的警告,不同级别显示不同的颜色,最严重为红色警告。

然后据此警告可下钻到相应的子窗口,查看相应情况。下面介绍各子窗口。

注:绿色区域代表相关区域正常,出现黄色区域代表该区域超出标准值出现警告,红色区域代表该区域出现异常。

1.Session面板:

(1)Response<10,系统的响应时间

(2)Total Users:总用户SESSION数

(3)Active Users:当前正在执行的用户SESSION数

2.Host面板:

(1)CPU利用率

(2)内存的使用情况

3. Server Processes面板:显示服务器进程的信息

(1)PGA Target/Used显示PGA目标总数及当前使用数

(2)dedicated显示专用服务器进程的个数

(3)Shared显示共享服务器进程的个数。

(4)Dispatchers显示dispathers的个数.

(5)JobQueue显示作业进程的个数

4. SGA面板:显示SGA中各组件的内存使用情况

(1)CurrentSize显示当前sga使用M数

(2)BufferCache,KeepPool,RecyclePool显示数据缓冲区的内存情况

(3)SharedPool:共享池的使用情况

(4)RedoLog:重作日志的使用情况

(5)LargePool:大池的使用情况

(6)JavaPool:java池的使用情况

5.Background process面板-后台进程面板:显示与磁盘I/O相关的后台进程。

(1)DBWR 数据写入进程

(2)LGWR 日志进程

(3)ARCH 规档进程式

6. 磁盘存储面板:显示主要数据库文件的情况(控制文件除外)

(1)DatabaseFiles:显示数据文件使用情况。

(2)联机日志文件情况。包括组数及大小。

(3)归档日志情况。

5)重点监控及分析项目

通过topSession面板可以查看当前哪个session当前占用了大量的资源,以此定位数据库问题。

这是主从式的面板,单击上部列表,会在sessionInformation中显示该会话的所有信息。

通过topSession面板可以查看当前哪个session当前占用了大量的资源,以此定位数据库问题。

单击上部列表,会在session Information中显示该会话的所有详细信息。

下面是几个应注意的地方:

  most recent sql:可以用来确定当前占用资源最大的sql语句

Session waits:可以找出与该session相关的等待事件。

Session locks:显示相关的锁信息。

6)SQL应用程序工作量

top sql: 点击Top Sql可以查看系统中所有占用资源较大的sql语句,选择相应行,可以查看SQL information详细信息;

根据条件来查看libraryCache中相应的sql.

 主要的选项为sorting

 可以据此来找出影响大的sql

找出占用耗用时间长的SQL语句,然后进行优化;找出哪些sql磁盘读写多、缓存命中率低、优化成本几乎为0的sql语句进行优化,先从语法优化,再从业务逻辑优化。

点击Fetch SQL按钮,可以查看到相应的SQL语句

7)活动分析

Activity:这个窗口,主要提供了等待事件,锁等待,闫锁等待,当前事务等。可以以图表方式查看磁盘、IO、事件等待等信息;

8)配置和内存:主要显示SGA的使用情况及参数配置情况

9)、磁盘存储情况:显示表空间利用率和在线日志的使用情况。

Spotlight性能监控工具的配置及使用的更多相关文章

  1. [原创]SpotLight性能监控工具使用介绍

    [原创]SpotLight性能监控工具使用介绍 1  Spotlight工具是什么? SpotLight 是由Quest公司出品的一款第三方性能监控的图形化工具.SpotLight有一些的产品诸如可以 ...

  2. 性能监控工具的配置及使用 - Spotlight On Oracle(oracle)

    一.    Spotlight On Oracle(oracle)1.1.   工具简介Spotlight是一个强有力的Oracle数据库实时性能诊断工具,提供了一个直观的.可视化的数据库活动展现.S ...

  3. 性能监控工具的配置及使用 - Spotlight On Oracle(oracle) 转:紫漪

    一.    Spotlight On Oracle(oracle) 1.1.   工具简介 Spotlight是一个强有力的Oracle数据库实时性能诊断工具,提供了一个直观的.可视化的数据库活动展现 ...

  4. 你值得拥有:25个Linux性能监控工具

    一.基于命令行的性能监控工具 1.dstat - 多类型资源统计工具 该命令整合了vmstat,iostat和ifstat三种命令.同时增加了新的特性和功能可以让你能及时看到各种的资源使用情况,从而能 ...

  5. 深入理解JVM—性能监控工具

    (转自:http://yhjhappy234.blog.163.com/blog/static/31632832201222691738865/) 我们知道,在JVM编译期和加载器,甚至运行期已经做了 ...

  6. CentOS 7上的性能监控工具

    Linux中基于命令行的性能监控工具:dstat.top.netstat.vmstat.htop.ss.glances 1.dstat – 多类型资源统计工具(需配置epel源) 该命令整合了vmst ...

  7. 25个Linux性能监控工具

    一段时间以来,我们在网上向读者介绍了如何为Linux以及类Linux操作系统配置多种不同的性能监控工具.在这篇文章中我们将罗列一系列使用最频繁的性能监控工具,并对介绍到的每一个工具提供了相应的简介链接 ...

  8. (转载)Java自带的GUI性能监控工具Jconsole以及JisualVM简介

    原文链接:http://blog.csdn.net/chendc201/article/details/22905503 1 Jconsole 1.1 简介以及连接 JConsole是一个基于JMX的 ...

  9. LINUX常见性能监控工具总结

    文章来源 工具功能概览 整理了一个关于监控工具及其功能的表.下面对这些工具单独详细介绍. Linux性能监控工具 top top命令会展示进程的实际活动.默认情况下,它会列出系统上所有cpu密集型任务 ...

随机推荐

  1. Servlet 常用API学习(一)

    Servlet常用API学习 一.Servlet体系结构(图片来自百度图片) 二.ServletConfig接口 Servlet在有些情况下可能需要访问Servlet容器或借助Servlet容器访问外 ...

  2. (二)快速搭建 ASP.net core Web 应用

    目录 1. 新建项目并上传Github 2. 关联Jenkins实现持续集成 3. 已经磨好枪了,开始写代码 1. 新建项目并上传Github 新建 ASP.NET Core Web 应用程序,勾选“ ...

  3. zabbix设置钉钉报警

    1 添加机器人 在钉钉群里面添加一个机器人 会获取到一个URL: 'https://oapi.dingtalk.com/robot/send?access_token=62be1ea97b4653b8 ...

  4. POJ-2502 Subway( 最短路 )

    题目链接:http://poj.org/problem?id=2502 Description You have just moved from a quiet Waterloo neighbourh ...

  5. 模板汇总——splay

    #define lch(x) tr[x].son[0] #define rch(x) tr[x].son[1] ; , root; struct Node{ ], pre, sz; void init ...

  6. dp递推 数字三角形,dp初学者概念总结

    数字三角形(POJ1163)          在上面的数字三角形中寻找一条从顶部到底边的路径,使得路径上所经过的数字之和最大.路径上的每一步都只能往左下或 右下走.只需要求出这个最大和即可,不必给出 ...

  7. dp递推题2010年吉林省省赛 1456: 逃票的chanming(3)

    1456: 逃票的chanming(3) 时间限制: 2 Sec  内存限制: 128 MB提交: 326  解决: 48[提交][状态][讨论版] 题目描述 这是一个神奇的国度.     这个国度一 ...

  8. Fedora7 安装完全过程

    操作系统课要用Fedora7 安装配置真是一把辛酸泪呀..... 首先是找镜像文件(这个就找了好久.....): https://archives.fedoraproject.org/pub/arch ...

  9. 从一道看似简单的面试题重新理解JS执行机制与定时器

     壹 ❀ 引 最近在看前端进阶的系列专栏,碰巧看到了几篇关于JS事件执行机制的面试文章,因为我在之前一篇 JS执行机制详解,定时器时间间隔的真正含义 博文中也有记录JS执行机制,所以正好用于作为测试自 ...

  10. JS枚举对象属性的方法及其区别

    愉快的中秋节要过去了,国庆倒计时两个周!!! 闲话不多说,那今天我们来看一看JS中枚举对象属性的方法有哪些以及他们的区别 首先在JS里面枚举对象属性一共有三种方法 for in: 会遍历对象中所有的可 ...