Berkeley CSUA MOTD:Entry 54372
Berkeley CSUA MOTD
 
WIKI | FAQ | Tech FAQ
http://csua.com/feed/
2025/05/24 [General] UID:1000 Activity:popular
5/24    

2012/4/27-6/4 [Computer/SW/Languages/Misc, Computer/SW/Unix] UID:54372 Activity:nil
4/27    I wrote a little shell script to collect iostat data:
        #!/bin/bash
        DATE=`date +%m%d`
        DATADIR=/var/tmp/user
        OUTPUTFILE=$DATADIR/$DATE.out
        while true
        do
        date; /usr/bin/iostat -x 1 > $OUTPUTFILE
        done

        Is there a better way to do this? Open source tool perhaps?
        \_ It's the easiest way. If you want to go fancy, Graphite is
           pretty nice for app level stuff.
           \_ Wow, this Graphite?
              http://graphite.wikidot.com
              Do you have it installed?
2025/05/24 [General] UID:1000 Activity:popular
5/24    

You may also be interested in these entries...
2012/5/8-6/4 [Computer/SW/Unix] UID:54383 Activity:nil
5/8     Hello everyone!  This is Josh Hawn, CSUA Tech VP for Spring 2012.
        About 2 weeks ago, someone brought to my attention that our script
        to periodically merge /etc/motd.public into /etc/motd wasn't
        running.  When I looked into it, the cron daemon was running, but
        there hadn't been any root activity in the log since April 7th.  I
        looked into it for a while, but got lost in other things I was
	...
2011/10/26-12/6 [Computer/SW/Unix] UID:54202 Activity:nil
10/24  What's an easy way to see if say column 3 of a file matches a list of
       expressions in a file? Basically I want to combine "grep -f <file>"
       to store the patterns and awk's $3 ~ /(AAA|BBB|CCC)/ ... I realize
       I can do this with "egrep -f " and use regexp instead of strings, but
       was wondering if there was some magic way to do this.
       \_ UNIX has no magic. Make a shell script to produce the ask or egrep
	...
2011/7/30-8/10 [Computer/SW/Languages/Misc] UID:54148 Activity:nil 66%like:54150
7/29    Happy Sysadmin Day
        \_ our "sysadmin" today deleted /home. When we asked her why
           she said she didn't do it. When I checked the sudo logs,
           I found these two commands in order:
               COMMAND=/bin/rm -r /home testuser
               COMMAND=/bin/rm -r /home/testuser
	...
2011/5/19-7/13 [Computer/SW/Languages/Misc] UID:54115 Activity:nil
5/19    If script A runs, and calls script B ..... is it possible for me to exit\
        script A based on results of script B and not continue?
        \_ assume any shell
        \_ Yes.
           \_ without passing the result to some stupid temp file?
              \_ It sounds like you want "scriptb || exit", which will run
	...
2010/4/22-5/10 [Computer/SW/Languages/Misc] UID:53797 Activity:nil
4/22    In Linux is there an easy way to rename the scripts in /etc/rc?.d ?
        For example I want to set all the /etc/rc?.d/S91apache to S100apache
        so that it'll run the ramdisk BEFORE going to apache.
        \_ Sure, just move them.
           \_ I mean is there a script that will rename all of them
              for me? Like: setrc apache2 0 0 1 1 1 1
	...
2009/10/27-11/3 [Computer/SW/Unix] UID:53475 Activity:nil
10/27   http://www.maxgames.com/play/flash-mind-reader.html
        how does this work?
        \_ sh -c 'for ((i=0;i<10;i++)); do for ((j=0;j<10;j++)); do echo "$i$j-(\
$i+$j)" | bc; done ; done' | uniq
        \_ bash -c 'for ((i=0;i<10;i++)); do for ((j=0;j<10;j++)); do echo "$i$j\
-($i+$j)" | bc; done ; done' | uniq
	...
2009/8/19-9/1 [Computer/SW/Unix] UID:53285 Activity:nil
8/18    Hi again, new freebsd guy here again, in bash I was able to go
        LD_LIBRARY_PATH=/opt/foo/lib ./runmyapp
        I managed to do this in tcsh by using setenv in a shell script
        that setenv's the lib path and then executes $1, just wondering
        if there was a way to do it in 1 line from the cmd line as in bash?
        Thanks, btw %2c or %3c worked.  Freebsd, tcsh and vi forever!
	...
2009/5/5-6 [Computer/HW/Laptop] UID:52950 Activity:moderate
5/5     Is there a good (or standard) way to make an offline copy of a w
        ordpress blog (mine, not someone else's)? tia.
        \_ oh man.
           \_ I could cobble something together with curl / wget, but I'd
              rather not if there is a standard way of doing this.  I'm
              pretty new to wordpress / blogging and I just want to keep
	...
2009/2/10-13 [Computer/SW/Security, Computer/SW/Unix] UID:52552 Activity:nil
2/10    I have an sh file that does a mount.. the mount does an
        authentication. I previosly stored the username and password
        from zenity prompts. However, I can't get a return on the password
        field. The following only works on the username:
        mount -t davfs "http://blahblah.com/BLahUser11" /mountdir << EOF
        ${username}
	...
2009/1/14-22 [Computer/SW/Languages/Perl, Computer/SW/Languages/Misc] UID:52378 Activity:nil
1/13    I want to extract a couple integer from an xml file, mainly,
        xml file from http://weather.com so I can put it on my xplanet marker
        file. has anyone done similar things (parse and extract data
        from xml) using shell script instead of python/perl?
        in the world of perl, it make sense to dump things into a hash
        which i can easily extract key/value pair.  can i achieve similar
	...
2008/12/18-2009/1/7 [Computer/SW/Mail] UID:52279 Activity:nil
12/18   Campus USENET service will be terminated on 12/31.
        http://ls.berkeley.edu/mail/micronet/2008/1608.html
        \_ I emailed RobR to tell him. -ausman
        \_ The CSUA is considering asking campus to allow us to run NNTP for
           ucb.class.*, as bSpace sucks major major ass. Thoughts? --t
           \_ That's noble, but maybe the effort would be better spent
	...
2008/12/2-6 [Computer/SW/Languages/Misc, Academia/Berkeley/CSUA/Motd] UID:52142 Activity:nil
12/1    Goddamnit stop stomping the motd.  Half the time I post here some
        idiot who is deadly afraid some motd stalker might FIGURE OUT WHO
        THEY ARE OH THE HORROR hand some stupid homemade motd editing script
        and the nukes my changes.  Stop it already you dumbasses.
        \_ Just FYI, today is 12/2
         \_ I like to live in the past
	...
2012/9/20-11/7 [Computer/SW/Unix, Finance/Investment] UID:54482 Activity:nil
9/20    How do I change my shell? chsh says "Cannot change ID to root."
        \_ /usr/bin/chsh does not have the SUID permission set. Without
           being set, it does not successfully change a user's shell.
           Typical newbie sys admin (on soda)
           \_ Actually, it does: -rwsr-xr-x 1 root root 37552 Feb 15  2011 /usr/bin/chsh
	...
2012/9/24-11/7 [Computer/SW/Languages, Computer/SW/Unix] UID:54484 Activity:nil
9/24    How come changing my shell using ldapmodify (chsh doesn't work) doesn't
        work either? ldapsearch and getent show the new shell but I still get
        the old shell on login.
        \_ Scratch that, it magically took my new shell now. WTF?
           \_ probably nscd(8)
	...
2011/4/6-20 [Computer/SW/Mail, Computer/SW/Unix, Industry/Startup] UID:54078 Activity:nil
4/6     My company is evaluating version control systems. Our two candidates
        are Perforce and Subversion. Anyone worked with both and have good
        arguments one way or the other? (These are the only two options we
        have.) We're most interested in client performance, ease of use, and
        reasonable branching.
        \_ I'll be 'that guy'. If perforce and subversion are optins, why isn't
	...
Cache (8192 bytes)
graphite.wikidot.com
net/graphite-dev/graphite/main/changes There are some really important things you need to know if you're upgrading from an earlier release (even trunk). API Changes * There have been API changes in whisper, carbon, and the webapp. tagging (you should be able to simply 'pip install django-tagging') New Default Behavior * We've addressed a security vulnerability with receiving pickled datapoints, see Bug #817247. This affects you in that the new default behavior is to use a more secure unpickler, which is slightly slower than the standard insecure unpickler. This may become the default in the future because its so awesome. org improvements, also the example config files now have some great comment documentation * Whisper now supports rollup aggregation methods other than averaging. net/graphite/+question/173304 (you can skip the question part if you just care about the new API) As for the current development focus, I can now finally work on the long-awaited merge of the 11 branch into trunk. The Ceres database will be in the next release, I'm going to try and merge it in (including the new refactored storage API) in the next week or so. I'll announce on graphite-dev when its available for testing. My aim is to get it fully documented for 10, which I'm targetting for end of this year. org/) is out that discusses the architecture of many open source software projects. Each chapter is written by a core contributor (typically the original author) of each project and explains the design decisions that were made and why. There happens to be a chapter on Graphite written by yours truly, chrismd. This is a not-for-profit book and all proceeds go to Amnesty International. fListingClass=0&fSearch=arch itecture+of+open+source+applications) as that maximizes the amount that gets donated. In other news, I recently left Sears and started working at Google in Mountain View. I'm enjoying it very much it but there has definitely been an impact on my recent contributions (or lack thereof) to Graphite. I just wanted to say that I am still very much planning on spending time continuing to work on Graphite. That is the next goal, no other features/projects until the docs are in tip-top shape. In the mean time, I really appreciate all of the community contributions on the Launchpad forums and IRC channel, I am still way behind on answering questions so any and all help is appreciated. This release is a major step forward for Graphite, with a long list of substantive enhancements only 3 months after the last release. org, the docs are now built using Sphinx and they live in trunk under the 'docs' folder. org will automatically update by pulling changes from launchpad nightly. com/), who sponsored the development of two awesome new features. This new daemon lets you configure the calculation of aggregate metrics at storage time instead of using a heavy-weight sumSeries or averageSeries at rendering time. Documentation on configuring carbon-aggregator will be coming soon. AppNexus also sponsored the development of the new Dashboard UI. This new interface allows you to put together dashboards containing many graphs quickly and easily. Note that this is a basic implementation for now, Beyond that, there are many other new features so please read through the changelog carefully. Here is a quick-rundown of the new features and some nice bug fixes: Features * Composer UI menus have been updated to reflect all currently available functions and options * New threshold() function allows you to draw a horizontal line with a custom color and legend name (though color and legend name are not available through composer UI yet) * New summarize() function allows you to draw data at a lower precision than it is stored at (ie. draw hourly datapoints for minutely data) * New group() function allows you to specify a collection of metrics for passing to other functions that require a single arg, without using wildcards. Bug #589476) * X-axis labeling has been revamped to avoid overlapping and confusing labels * RPM and source RPM packages are available for download. Note that they currently do not check dependencies and do not perform post-install tasks. This means they are suitable for upgrades but the usual install doc will need to be followed for new installations. Please contribute feedback regarding these packages so we can make them work out of the box on Fedora and CentOS. Bug #542090 - fixed Y-axis labeling issue for large values with small variance * Dozens more... The best part is, the work in this release has continued to be largely a community effort. Almost all bugs that got fixed were reported from users and the vast majority have been fixed because of contributed patches and highly detailed bug reports. Thanks to everyone who has contributed code, bug reports, documentation, questions, and answers. In the interest of not being incredibly wrong again, I will refrain from putting a date on when the next Graphite release will be out. Several projects I have to do for work in the coming months are going to involve major enhancements to Graphite, unlike this past year during which I've really only worked on it in my spare time. Still kickin' - 12/7/10 So the great documentation release of March never materialized, nor did the monthly release cycle last more than one month. All I can say is that my intentions are good, but my follow-through isn't quite what it used to be (at least when it comes to spare-time projects). Fortunately, Graphite has remained a fairly active project in the absence of me posting any new announcements. Many new features have been developed and bugs have been fixed, but alas no new release since February. I am committing to getting it out the door before the new year. Nothing major is changing, just the culmination of a year of small-ish new features and bug fixes. A while back I posted on the graphite-dev mailing list about a new database format that will allow datapoints for a single metric to be sharded across multiple servers (currently all the datapoints for a given metric must be colocated). That project got postponed for a few months but is back on my radar now. Per a project at work I am tasked with implementing an interactive graph UI in the coming months. torre/graphite/add-flot/+merge/39 768 so that is something to check out. Last but not least, for the past few months I have been working on contributing a chapter for a book on open source software architecture. The chapter covers the architecture of Graphite and explains some of the design choices and scalability factors. Hopefully it will be out Q1-Q2 2011, I'll be sure to announce when it is available. Lots of community members have contributed code and ideas to help move Graphite forward. I'm really excited about this, the project is gaining momentum and I hope we can keep that up by continuing with the new monthly release cycle. To give credit where it is due, here is a list of this month's most active users and what they've been working on (in no particular order): * Lucio Torre - AMQP support * jdugan - beautification of the Y-axis labels via the yUnitSystem option * Nick Leskiw - the YAxis=right rendering option * Kraig Amador - tons of rendering options/functions such as yLimit, timeShift(), log(), sumSeriesWithWildcard(), new filtering functions, and much more! Thanks to everyone who has gotten involved with Graphite, your support helps motivate others (especially me). Many of these new features are really great but unfortunately undocumented, but the good news is that my focus for March is going to be 100% on *documentation*. There may not be an actual code release in March but I hope to get a substantial amount of documentation written right here on this wiki. New Year, New Release, New Strategy - 1/4/10 It's hard to believe it's been an entire year since the last release of Graphite. This just goes to show how good I am at procrastination. I don't usually do new year's resolutions, but I've got a good idea for one this year. I really want to get away from infrequent huge releases like this one and get back to very frequent small releases in the true spirit of open source....