Crawl Log Timer Jobs MIA (missing in action)

<autocelebrazione>E’ con immenso piacere che scrivo questo primo post sul nuovo blog, sempre WordPress, ma “autogestito”. Il nuovo tema responsivo mi soddisfa molto dal punto di vista tecnico, un po’ meno da quello grafico… ho idea che i lavori non siano ancora finiti, so stay tuned ;) </autocelebrazione>

Giorni fa mi sono imbattuto in uno strano problema in ambito “Search”. Stavo indagando un errore del servizio di ricerca in una farm SharePoint 2010 quando, accedendo ai crawl log mi sono accorto che non era presente alcun log. Sapevo per certo che l’indicizzazione dei contenuti avveniva come me da pianificazione, ma di log neanche l’ombra.

Il popolamento dei crawl log e la loro manutenzione sono responsabilità di due timer job:

  • Crawl Log Cleanup for Search Application <Nome SSA>
  • Crawl Log Report for Search Application <Nome SSA>

(more…)

Provare SharePoint 2013

Mi fa impressione pensare al fatto che sia già passata una settimana dalla fine dell’edizione 2013 della SharePoint & Office Conference. Sarà perché dopo un periodo così inteso sono tornato al lavoro “ordinario” con una strana sensazione di stordimento del tipo “E adesso cosa succede?”.

Cooomunque… La mia impressione sulla conferenza è stata molto positiva, sono davvero molto soddisfatto sia come speaker che come partecipante. In questi tre giorni infatti, oltre che parlare di Powershell 3 e SharePoint 2013, New SharePoint 2013 Search Features e (ahimè) Workflow con SharePoint Designer 2013, ho avuto modo di seguire qualche sessione, purtroppo non tutte quelle che avrei voluto. Ho trovato notevoli quelle di Carmelo Ferrara (SharePoint: Capacity Planning and Performance Improvements), Spencer Harbar (Rational Guide to SharePoint Server 2013 User Profile Synchronization), Brian Alderman (Optimizing SQL Server for SharePoint) e Luca Bandinelli (SharePoint 2013 new Search Architecture). (more…)

Report dimensioni site collection con Powershell

E’ passato un po’ di tempo dall’ultimo post e mi accingo ad “inaugurare” il nuovo anno esattamente da dove l’avevo lasciato, cioè da Windows PowerShell.

Ne approfitto già che ci sono per ricordarvi che alla prossima SharePoint & Office Conference io e Claudio terremo una sessione su PowerShell 3 e SharePoint 2013, se siete da quelle parti fatevi riconoscere :).

Ma torniamo a noi. Di recente un cliente mi ha chiesto un report giornaliero sulle dimensioni di una serie di site collection (SharePoint 2010). Un possibilità era quella di suggerire al cliente di aprire la site collection con SharePoint Designer tutte le volte che ne aveva voglia e controllare da se. Ottima idea per interrompere subito i rapporti con la maggior parte dei clienti :). Affidarsi alle dimensioni del content database non fornisce sufficienti informazioni sul reale livello di utilizzo del sito in quanto lo stesso database può contenere più site collection. Inoltre penso sia applicabile la stessa considerazione fatta in precedenza. (more…)

Vintage Weekend: Elencare tutti i documenti di un sito con Powershell su SharePoint 2007

Chiamatelo Vintage, chiamatelo Legacy, chiamatelo un po’ come vi pare ma SharePoint 2007 è ancora là fuori e gode di discreta salute.

Proprio qualche giorno fa mi è stata chiesta un indicazione di massima sul numero totale di elementi presenti in una web application. In un primo momento ho pensato che la pagina “storage manager” potesse aiutarmi, ma così non è stato in quanto questa pagina mostra al massimo i primi 100 “contenitori” più utilizzati.

Ho trovato la risposta, come in molti altri casi in Windows Powershell. Non mi stancherò mai di ripetere infatti che, anche se solo in SharePoint 2010 sono state create delle cmdlet apposite, già dalla versione 2007 è possibile accedere al modello oggetti di SharePoint da script.

Il concetto è molto semplice, selezionare una web application ed effettuare un ciclo su tutte le site collection, tutti i siti, tutti gli elenchi e scrivere URL, titolo e tipologia della lista in un file di testo. Infine ho anche aggiunto il conteggio degli elementi presenti in ciascuna lista.

Una volta eseguito lo script potrete aprire il file CSV in Excel ed utilizzarlo per fare tutte le statistiche che vi servono.

Happy Vintage PoSH
– Riccardo

Nuovo articolo SharePointCommunity.it

Dopo qualche mese di “assenza” sono finalmente tornato a scrivere per SharePointCommunity.it. Sabato è stato pubblicato il mio ultimo articolo, Creare custom property extractors per FAST Search for SharePoint 2010.

Come? Vi state chiedendo cosa sia un custom property extractor? Anticipo solo che si tratta di una feature di FAST Search for SharePoint 2010 che permette di riconoscere automaticamente una serie di termini all’interno dei contenuti indicizzati (attenzione, leggete bene le note finali dell’articolo) e di utilizzarli nel sito di ricerca (o forse sarebbe meglio dire nel servizio di ricerca).

Per il resto vi invito a leggere l’articolo e, se vi va, farmi sapere cosa ne pensate :).

Happy SPC.it
– Riccardo

Refinement Panel: errore nel link Show more

Poche settimane fa sono incappato in un problema a dir poco “curioso”. Cliccando sul link “show more” nel refinement panel di una pagina dei risultati di ricerca personalizzata, al posto di mostrare un numero più ampio di scelte, non succedeva proprio niente.

Refinement Panel

Controllando con la developer toolbar ho notato l’errore di script seguente (The value of the property “SearchEnsureSOD” is null or undefined, not a Function object).

L’errore mi è sembrato molto strano, perchè XSLT e CSS a parte avevo solo rimosso la web part relativa al box di ricerca.

Dopo una breve ricerca ho scoperto che il punto è proprio questo. Senza la Search Box Web Part (o analgo controllo in master page) viene sollevata questa eccezione.

A questo punto mi sono incuriosito e ho cercato nel mio piccolo di approfondire un pò l’argomento. La prima cosa che ho notato analizzando le chiamate http della pagina con Fiddler è stata che con la web part in pagina vengono caricati due file javascript in più, il search.js e ajaxtoolkit.js.

Fiddler Results

Controllando l’output della pagina ho inoltre notato che, oltre a non effettuare la chiamata al file search.js, nella versione della pagina senza box di ricerca (web part o controllo non fa differenza) mancano una serie di funzioni javascript.

HTML

A pensarci bene avrei potuto fare un’altro paio di verifiche, ad esempio richiamare “a mano” il file search.js dal page layout, peccato non mi sia venuto in mente prima, maybe next time :)

SearchEnsureSOD(-Riccardo)