After blogging about a year ago Site Life Cycle Management V2 .. Why V2- I’ve finally come around and make it ‘BETA’ –able enough to put it on CodePlex for you to try out (and hopefully use ;)
So what does it do?
Please review and test this application properly. Do not just install this application on your production environment. This solution is still in beta phase
- Captures sitedeletions and makes a backup first before deleting the site or web.
- Gathers sites that are unused (using the Usage info, Last Content Modified Date and Last Security Modified Date)
- Actions can be taken on this "unused" sites, such actions are
- Mail the siteowner and informing them that their site is being unused
- Lock the site after a given period of time
- Delete the site after a given period time
Just click on setup.exe and make sure it installs onto your Central Administration Web Application. After the installation go to “Manage farm features” in the “Operations” tab and activate the following features
• Lifecycle Management Delete Capture Stapling
• Lifecycle Management UI
The first feature ensures that the feature receiver that captures the deletion of a web or a site is stapled onto all the existing out-of-the-box site templates. Please note: all your existing sites don’t have the feature receiver attached yet. This must be done using the admin UI. Which brings us to the second feature that is there to make all the administration links appear in the “LifeCycle Management” in the “Application Management” tab like so :
Site deletion Capture Settings
- First select the Web Application which you want to configure.
- Next you can install the event handler on the selected Web Application so that all the existing sites will get the capture functionality as well. Alternatively you can check whether the event handler is installed already.
- Next you can define the path where to backup up to when a site or web gets deleted
- You can check whether or not to include a datetime stamp within the filename
- You can check to create a subfolder per sitecollection
- You can check to create a subfolder per web ((and if the above checkbox is checked) per sitecollection)
- You can check to log all the deletions in SharePoint (please note: this only works when the LCM site is created using the “Timerjob configuration” administration page)
- Choose the Web Application which you want to configure
- Define when a site should be marked as unused, by default this is set to 90 days. You have to option to check on three different kind of date that are tracked by SharePoint
- Last Content Modified Date, this is the date when for the last time a particular content item (listitem, document, etc) was modified.
- Last Security Modified Date, this is the date when for the last time something has changed in the security settings.
- Last Usage Date, this is the date when an user for the last time has visited the site. (Please note : this is only available if you have “Analysis Processing” option enabled. And won’t go back further then one month)
- The first “Action” to do something about those unused sites is to mail the siteowner of that particular site. Check “Mail siteowner before locking/deleting” to make this happen.
- Define how many days the system must wait to advance to the next ‘Action’ level (eg, locking or deletion of the site)
- Define the subject of the mail that is send
- Define the body of the mail that is send
- The second “Action” is locking the site. The type of locked that is used in this version is the ‘writelock’. This lock prevents the user to add or modify anything on the site.
- Define how many days the system must wait to advance to the next ‘Action’ level (eg. deletion of the site or do nothing at all)
- The third “Action” is the deletion of the site. I guess this action speaks for itself ;)
After all the configuration you can choose to schedule a timerjob that will loop through all the sites at a given day and time.
We have two different timerjobs :
- Statistics Gathering Timer Job Schedule , this timerjob is responsible for gathering all the data about the sites
- Maintenance Timer Job Schedule, this timerjob is responsible for taking the actions on the gathered sites that are configured in the previous page
As can be read in the page, it’s very wise to schedule this timerjobs at off-peak hours. Since it can impact the performance of your farm.
Unused Sites Overview
This page is also known as the ‘Manual’ LifeCycleManagement page, meaning that you can do the ‘automated’ by hand ;)
- Mail, the selected site owner will be mailed using the mail template that is configured for the given Web Application. (Please note: this option is only available if you have a mail server are configured in your farm)
- Lock, the selected site will be write locked.
- Delete, the selected site will be deleted (Please note : make sure that the WebApplication is configured for capturing the deletion since this action is not responsible for creating a backup first)
- Gather, an one-time scheduled timerjob will be initiated and all the sites of the given WebApplication will be checked and marked as unused as how the Web Application is configured)
- Action, also an one-time scheduled timerjob will be initiated to perform the configured actions.
Deleted Sites Overview
A simple overview page that shows you all the captured sites. This page is not really worth a picture ;)
My current wishlist/todo list is as follows:
- Support for gathering webs and not only sitecollections. The code is already there but I have to create some UI and logic around it.
- Add variables for the emails
- Better reports about what is going on with the timerjobs
So there you have it again.. please let me know what you think of it. And please remember this is still a beta product so don’t put in production straightaway :)
Oh yeah.. almost forgot, get it here : http://www.codeplex.com/zsLCM