Skip to main content

GSA integration for external indexing and searching

Project description

Introduction

Package collective.gsa integrates Plone site with a Google Search Appliance (GSA). It provides an indexing processor with collective.indexing as well as a search capabilities.

Installation

Add collective.gsa to your buildout.cfg to both eggs and zcml section:

[buildout]

eggs = collective.gsa

[instance]
zcml =
    collective.gsa
    collective.gsa-overrides

After running buildout and restarting the server, you can install it via Quick Installer either ZMI or Plone Add/Remove Products. After installing the package the GSA settings and GSA maintenance configlets will appear in the Plone Control Panel. Follow the fields’ description to set it up.

Indexing

Package collective.gsa registers adapter for IQueueIndexProcessor and indexing is done via collective.indexing package. When object is reindexed the content provider adapter is called to obtain the data.

The package contains content providers for objects implementing IATDocument, IATFile and IATContentType.
  • For document CTs (Page, News Items etc.) the main macro ( usually the site without portlets and the header).

  • For file CTs the primary file field is sent.

  • For other archetype based CTs the title and description.

To create support for other types just create your own content provider implementing interface IContentProvider and register it via zcml. For details look at the content_provider module and gsa’s configure.zcml

The package supports dual indexing if you have two sites - e.g. secure for edit access and public for anonymous access. The object’s identifier in GSA is its url which is obtained using object’s absolute_url method. Thus all the indexing has to be done from the url you want it to be indexed for ( e.i. not from localhost). In the GSA’s control panel you can set a dual base url for anonymous site. Then the url is constructed using the dual url plus absolute_url_path method.

When reindexing object, the feed id added to a persistent queue and is removed when successfully sent to GSA hence if GSA is unreachable the feed will be send when another object is reindexed.

Fact that GSA received the feed does not mean that it is going to be indexed ( e.i. the url is not in the Matched URLs settings ) If your objects are not indexed, please, check the GSA’s Crawl and Index settings.

Searching

This package replaces the search template and livesearch script to use GSA as a search engine. This is done by adding a gsasearch=on into the search request to avoid using GSA search for internal searches ( such as navigation, folder contents etc. )

The plone’s advanced search is at the default search_form template and does not use GSA at all, because GSA does not handle indexes as zope’s ZCatalog does. However you can use the GSA’s advanced search which url you can set at the local GSA control panel.

Current Status

The basic implementation is nearly finished and we aim to write the neccessary tests for it.

Credit

This code was inspired by collective.solr package and it was kindly sponsored by University of Leicester.

Changelog

1.0.2 - 2009-06-08

  • Removed rank from LiveSearch if zero

  • Filtering creators only to the existing in the current plone instance

  • When reindexing files, commiting after one

  • Added straight option for GSA indexer to skip persistent queue ( for global reindex )

1.0.1 - 2009-05-29

  • Added better Memory error handling

1.0 - Initial release

  • Initial release

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

collective.gsa-1.0.2.tar.gz (31.0 kB view details)

Uploaded Source

Built Distribution

collective.gsa-1.0.2-py2.4.egg (83.5 kB view details)

Uploaded Source

File details

Details for the file collective.gsa-1.0.2.tar.gz.

File metadata

File hashes

Hashes for collective.gsa-1.0.2.tar.gz
Algorithm Hash digest
SHA256 0c2130a9aca4a5dd1eb1838be2459cbf5fb83b73ac9581baee0ab96834b724a8
MD5 09666db7cd3e9271e996b7bc32582a9d
BLAKE2b-256 f43945d102636959f915d19431fcbc2c0254d6cb8015dac77119b6f586acd459

See more details on using hashes here.

File details

Details for the file collective.gsa-1.0.2-py2.4.egg.

File metadata

File hashes

Hashes for collective.gsa-1.0.2-py2.4.egg
Algorithm Hash digest
SHA256 8d365a1fd88ec66794d3ae40e872280899c32f010790de6a426a16eacd84441e
MD5 1656d46f4d6f2728498e1fcce672c529
BLAKE2b-256 e110f413e0737a17514c841fbd6c2245834c2e4e838dd7c1c6c0e0e7a6f47d7b

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page