glustertool - update

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

glustertool project is moved to https://github.com/gluster/glustertool (Initially aravindavk/glustertool). Please send pull requests to the new location.

Changes:
    - Added spec file to generate RPM
- Added new tool "dirgfid2path" to find path of directory if we know GFID.

Added TODO list to track the plans https://github.com/gluster/glustertool/blob/master/TODO.md

regards
Aravinda

On 01/28/2016 12:23 PM, Sachidananda URS wrote:
Also, don't forget to send a pull request to Aravinda, so that others can
use it too.
Maybe add some basic usage note. If it is not already there.


On Thu, Jan 28, 2016 at 7:04 AM, Aravinda <avishwan@xxxxxxxxxx> wrote:

Nice tool.

Easy to add, clone the glustertool repo, and run

# ./newtool mnt_log_analyze --type=exec --bin=log_analyzer.sh --prog=bash

I used tool name "mnt_log_analyze" just for this example, feel free to
name your tool.

This will create following dir and files
glustertool/plugins/mnt_log_analyze
glustertool/plugins/mnt_log_analyze/tool.conf
glustertool/plugins/mnt_log_analyze/doc.txt

Update the tool doc in doc.txt and copy your script to
glustertool/plugins/mnt_log_analyze dir.

Thats all! use your tool using,

# glustertool mnt_log_analyze /var/log/glusterfs/mnt-glusterfs.log

Let me know if something is not working.

regards
Aravinda


On 01/28/2016 04:56 AM, Raghavendra Bhat wrote:

I have a script written to analyze the log message of gluster process.

It actually scans the log file and identifies the log messages with ERROR
and WARNING levels.
It lists the functions (with either ERROR or WARNING logs) and their
percentage of occcurance.

It also lists the MSGIDs for ERROR and WARNING logs and their percentage
of
occurance.

A sample o/p the script:

[root@hal9000 ~]# ./log_analyzer.sh /var/log/glusterfs/mnt-glusterfs.log
Number Percentage Function
7 0.49 __socket_rwv
4 0.28 mgmt_getspec_cbk
4 0.28 gf_timer_call_after
3 0.21 rpc_clnt_reconfig
2 0.14 fuse_thread_proc
2 0.14 fini
2 0.14 cleanup_and_exit
1 0.07 _ios_dump_thread
1 0.07 fuse_init
1 0.07 fuse_graph_setup

========= Error Functions ========

7 0.49 __socket_rwv
2 0.14 cleanup_and_exit

Number Percentage MSGID
958 67.99 109066
424 30.09 109036
3 0.21 114057
3 0.21 114047
3 0.21 114046
3 0.21 114035
3 0.21 114020
3 0.21 114018
3 0.21 108031
2 0.14 101190
1 0.07 7962
1 0.07 108006
1 0.07 108005
1 0.07 108001
1 0.07 100030

========= Error MSGIDs ========

1 0.07 108006
1 0.07 108001

It can be found here.

https://github.com/raghavendrabhat/threaded-io/blob/master/log_analyzer.sh
.

Do you think it can be added to the repo?

Regards,
Raghavendra

On Wed, Jan 27, 2016 at 3:44 AM, Aravinda <avishwan@xxxxxxxxxx> wrote:

Hi,
I am happy to share the `glustertool` project, which is a
infrastructure for adding more tools for Gluster.

https://github.com/aravindavk/glustertool

Following tools available with the initial release.(`glustertool
<TOOLNAME> [ARGS..]`)

1. gfid - To get GFID of given path(Mount or Backend)
2. changelogparser - To parse the Gluster Changelog
3. xtime - To get Xtime from brick backend
4. stime - To get Stime from brick backend
5. volmark - To get Volmark details from Gluster mount

rpm/deb packages are not yet available, install this using `sudo
python setup.py install`

Once installed, run `glustertool list` to see list of tools available.
`glustertool doc TOOLNAME` shows documentation about the tool and
`glustertool <TOOLNAME> --help` shows the usage of the tool.

More tools can be added to this collection easily using `newtool`
utility available in this repo.

      # ./newtool <TOOLNAME>

Read more about adding tools here
https://github.com/aravindavk/glustertool/blob/master/CONTRIBUTING.md

You can create an issue in github requesting more tools for Gluster
https://github.com/aravindavk/glustertool/issues

Comments & Suggestions Welcome

regards
Aravinda

On 10/23/2015 11:42 PM, Vijay Bellur wrote:

On Friday 23 October 2015 04:16 PM, Aravinda wrote:
Hi Gluster developers,
In this mail I am proposing troubleshooting documentation and
Gluster Tools infrastructure.

Tool to search in documentation
===============================
We recently added message Ids to each error messages in Gluster. Some
of the error messages are self explanatory. But some error messages
requires manual intervention to fix the issue. How about identifying
the error messages which requires more explanation and creating
documentation for the same. Even though the information about some
errors available in documentation, it is very difficult to search and
relate to the error message. It will be very useful if we create a
tool which looks for documentation and tells us exactly what to do.

For example,(Illustrativepurpose only)
glusterdoc --explain GEOREP0003

       SSH configuration issue. This error is seen when Pem keys from
all
       master nodes are not distributed properly to Slave
       nodes. Use Geo-replication create command with force option to
       redistribute the keys. If issue stillpersists, look for any
errors
       while running hook scripts inGlusterd log file.


Note: Inspired from rustc --explain command
https://twitter.com/jaredforsyth/status/626960244707606528

If we don't know the message id, we can still search from the
available documentation like,

       glusterdoc --search <SEARCH_KEY_WORD>

These commands can be programmatically consumed, for example
`--json` will return the output in JSON format. This enables UI
developers to automatically show help messages when they display
errors.

Gluster Tools infrastructure
============================
Are our Gluster log files sufficient for root causing the issues? Is
that error caused due to miss configuration? Geo-replication status is
showing faulty. Where to find the reason for Faulty?

Sac(surs AT redhat.com) mentioned that heis working on gdeploy and
many
developers
are using their owntools. How about providing common infrastructure(say
gtool/glustertool) to host all these tools.


Would this be a repository with individual tools being git submodules
or
something similar? Is there also a plan to bundle the set of tools into
a
binary package?

Looks like a good idea to me.

-Vijay


_______________________________________________
Gluster-devel mailing list
Gluster-devel@xxxxxxxxxxx
http://www.gluster.org/mailman/listinfo/gluster-devel


_______________________________________________
Gluster-devel mailing list
Gluster-devel@xxxxxxxxxxx
http://www.gluster.org/mailman/listinfo/gluster-devel


_______________________________________________
Gluster-users mailing list
Gluster-users@xxxxxxxxxxx
http://www.gluster.org/mailman/listinfo/gluster-users



[Index of Archives]     [Gluster Development]     [Linux Filesytems Development]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux