Excerpt |
---|
The |
Table of Contents
Table of Contents | ||||
---|---|---|---|---|
|
...
The Bing API key needs to be requested directly from Microsoft on the Azure Marketplace. It can then be configured in the section bing
.
Key | Usage | Default |
---|---|---|
account_key | The Bing News API key. | (No default value) |
root_url | API endpoint for the Bing News API. | https://api.datamarket.azure.com/Bing/Search/ |
Source Manager
The source manager implements the polling behavior. The behavior is configured in the two sections source_manager
and source_manager_web
(for news and web sources respectively) with the following keys.
All values are JSON-encoded time delta objects and can contain the keys seconds, minutes, hours, days, weeks. To avoid thundering herd problems, there is some randomness applied to these values (+/- one fourth of the delay).
Key | Usage | Default for News |
---|---|---|
check_delay | How long after |
errors the source is polled again. The delay is exponentially increased with each error. |
| |
max_error_delay | The maximum delay after errors. | {"days": 3} |
success_delay | Delay when |
the Bing API request succeeded. When no new items |
check_delay
is used insteadwere found, this interval is increased with each request. This ensures that sources with very low result frequency don't use up too much of the API quota. | {"minutes": 15} |
max_success_delay | The maximum delay when |
no new items were found. |
|
To avoid thundering herd problems, there is some randomness applied to these values (+/- one fourth of the delay).
Example Configuration
Code Block | ||
---|---|---|
| ||
[source_manager] check_delay = {"minutes": 1} max_error_delay = {"days": 3} success_delay = {"minutes": 15} max_success_delay = {"hours": 12} [source_manager_web] check_delay = {"days": 1} max_error_delay = {"days": 7} success_delay = {"days": 1} max_success_delay = {"days": 3} |
Result Size Limiting
The number of results that are loaded for new sources is configured in configuration.ini using the provider.bing.prefetch_size
option.
Securing the Bing Provider
The Bing Provider relies on MySQL Server to store information about searches and search histories. Connecting to MySQL relies on a MySQL user called "bing" configured with a default password. To modify the password, please follow these steps.
- Generate a password. Lets refer to the generated password as $PASSWORD
First configure the password in /etc/squirro/bing.ini like so:
Code Block title /etc/squirro/bing.ini [bing] db = mysql://bing:$PASSWORD@localhost/bing?charset=utf8
Next you would modify the password within MySQL server:
Code Block language bash sudo su mysql -e "SET PASSWORD FOR bing = PASSWORD(\"$PASSWORD\")"
Restart the Squirro Bing Provider service like so:
Code Block language bash service sqbingd restart