powershell

Sharepoint 2013 / erreur Unexpected response from server. The status code of response is ’500′. The status text of response is ‘System.ServiceModel.ServiceActivationException’

Citation Publié le Mis à jour le

Bonjour,

Vous venez de configurez les apps, après quelques heures (jours) de dialogue avec votre admin réseau, tout fonctionne bien 😉

Dans la foulée, vous voulez activer l’app qui permet d’afficher la météo, seulement voilà, vous obtenez le message d’erreur suivant :

Unexpected response from server. The status code of response is ‘500′. The status text of response is ‘System.ServiceModel.ServiceActivationException’

Après un tour rapide sur la conso mémoire, celle-ci est presque entièrement utilisée :

Solution 1

Augmentez la RAM de votre serveur, surtout si vous êtes en configuration de production, il a des chances que la conso mémoire ré-augmente

Solution 2 :

Réduisez le niveau de performances du service de recherche avec la commande powershell suivante :

Set-SPEnterpriseSearchService -PerformanceLevel Reduced

Get-SPEnterpriseSearchService

Solution 3 :

Limitez l’allocation mémoire du processus noderunner.exe. Le fichier de configuration est situé ici

C:\Program Files\Microsoft Office Servers\15.0\Search\Runtime\1.0\noderunner.exe.config

Modifiez la valeur comme suit (la valeur est en Mo):

   <!-- These settings can also be set using command line arguments with the same name. -->
    <nodeRunnerSettings memoryLimitMegabytes="100" />


Après ceci, redémarrez les process noderunner.exe :

Sources :

Publicités

Powershell / patientez quelques minutes en couleur ;)

Publié le Mis à jour le

Bonjour,

Il est parfois utile, pour diverses raisons, de patienter lors de l’exécution d’un script Powershell. Je livre ci-dessous le code d’une fonction permettant d’afficher un curseur coloré pendant N minutes :


function TB-CountDown($waitMinutes) {
	$startTime = get-date
	$endTime   = $startTime.addMinutes($waitMinutes)
	$timeSpan = new-timespan $startTime $endTime
	write-host "`nSleeping for $waitMinutes minutes..." -backgroundcolor black -foregroundcolor white
	
	# $cursor = @("-","\","|","/","-","","","",">","<",">","<",">","<",">","<",">","<")
	$cursor = @("-","\","|","/")
	$colors=@("Black","DarkBlue","DarkGreen","DarkCyan","DarkRed","DarkMagenta","DarkYellow","Gray","DarkGray","Blue","Green","Cyan","Red","Magenta","Yellow","White")
	 
	$i=0
	while ($timeSpan -gt 0) {
		$color = Get-Random -Input $colors
		$timeSpan = new-timespan $(get-date) $endTime
		write-host "`r".padright(1," ") -nonewline
		Start-Sleep -m 100
		if (($cursor.length) -gt $i ){
			$t =$cursor[$i]
			write-host -foregroundcolor $color "  $t" -nonewline
			$i++
		}
		else{
			$i=0
		}
	}	
		
	write-host ""
}

Attention si vous faites du transcript, chaque caractère affiché ajoute une ligne dans votre fichier de transcript

Sources : http://poshtips.com/2010/03/29/powershell-countdown-timer/

Récupérez les photos des utilisateurs de votre SSP via powershell

Publié le Mis à jour le

Bonjour,

Je poste tel que un script Powershell permettant de télécharger les photos de tous vos utilisateurs du SSP.

#TBUI from http://www.readmespot.com/question/f/156835/list-all-user-profile-properties-with-powershell---powershell-query

[void][System.Reflection.Assembly]::LoadWithPartialName("Microsoft.Office.Server")
[void][System.Reflection.Assembly]::LoadWithPartialName("Microsoft.Office.Server.UserProfiles")

Function global:Get-UserProfiles($SSPName)
{
    $ServerContext = [Microsoft.Office.Server.ServerContext]::GetContext($SSPName);
    $UPManager = new-object Microsoft.Office.Server.UserProfiles.UserProfileManager($ServerContext);
    return $UPManager.GetEnumerator();
}

function GetAllProfilesImages(){

#give SSP name
$profiles = Get-UserProfiles("SSP1");

    $profiles | ForEach-Object {

        $PreferredName     = $_.Item("PreferredName");
        $AccountName     = $_.Item("AccountName");
        $PersonalSpace    = $_.Item("PersonalSpace");
        $PictureURL        = $_.Item("PictureURL");

        if ($PictureURL -ne ""){
            $clnt = new-object System.Net.WebClient;
            $clnt.UseDefaultCredentials = $true

            $url = $PictureURL.ToString();
            $file = 'images\' ;
            $file +=$PreferredName;
            $file += ".jpg";

            Write-Host "downloading $url in $file";
            $clnt.DownloadFile($url,$file)

        }
    }
}

GetAllProfilesImages

Powershell / Suppression des éléments d’une liste WSS ou Sharepoint

Publié le

Ci-dessous un script Powershell permettant de vider une liste d’éléments WSS. Ce script a été testé avec succès sur une plateforme virtuelle WSS 2.0 (90 000 lignes, deux semaines de temps traitement !!). Ce script fonctionne aussi sur WSS 3.

function DeleteListItems([string]$SiteURL, [string]$ListName)
{
   [System.Reflection.Assembly]::LoadWithPartialName(« Microsoft.SharePoint ») > $null
   $site = new-object Microsoft.SharePoint.SPSite($SiteURL)
   $web = $site.openweb()
   Write-Output get-date
   Write-Output « Web URL: « , $web.URL
   Write-Output « Web Title: « , $web.Title

   $myList = $web.Lists[$ListName]
   Write-Output « List Title: « , $myList.Title
   $collListItems = $myList.Items

   $y=$myList.Items.Count-1

   for ($y; $y -gt -1; $y–)
   {
   #Get Item
   $myItem=$collListItems.Item($y)
   Write-Host « deleting item ID », $myItem.ID, $y, « … »
   Write-Output « deleting item ID », $myItem.ID, $y, « … »
   $myList.Items.Delete($y)
   }

}

$_SiteURL= »http://mywsssite/ »
$_ListName = »Events »

DeleteListItems $_SiteURL $_ListName