Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Verify that the default engines are indeed working #17

Open
unixfox opened this issue Jan 29, 2020 · 7 comments
Open

Verify that the default engines are indeed working #17

unixfox opened this issue Jan 29, 2020 · 7 comments

Comments

@unixfox
Copy link
Member

unixfox commented Jan 29, 2020

This instance https://search.stinpriza.org/ is sometimes at the top of the list because the default engine sometimes instantly timeout and thus gives a very low response time:
image
image

Checking if the default engines are working is probably the best way to avoid having broken instances at the top of the list.
I remembered there were an instance like this a few months ago on stats.searx.xyz and it was always at the top of the list because it would instantly return no results.

@dalf
Copy link
Member

dalf commented Jan 29, 2020

Related to searx/searx#1559 (itself related to searx/searx#1813)
Side note: searx-checker is not deployed (*), that's mean if some people use searx-docker, they have removed the searx-checker part (or I don't know ?).

Once searx/searx#1559 is implemented, we have to wait that ops update their instances.

Another way is to check the engines with searx-stats2, actually it's already the case for the wikipedia and google engines using this code:
https://github.com/dalf/searx-stats2/blob/94323278a3553f62941e46aa11f0f77a4bd39c6d/searxstats/fetcher/timing.py#L17-L19
https://github.com/dalf/searx-stats2/blob/94323278a3553f62941e46aa11f0f77a4bd39c6d/searxstats/fetcher/timing.py#L26-L36

This solution will take way more time than an embedded searx-checker to test all the engines (searx-stats2 has to avoid to trigger filtron).


(*) about searx-checker deployment:

@dalf
Copy link
Member

dalf commented Feb 17, 2020

Another way to deal with this issue: since Firefox already loads the index page, it can be use to send a query with the default engines. Then the performance API can give the response time.

Additional benefit: the code can checks the static resources on the result page.

@dalf
Copy link
Member

dalf commented Feb 19, 2020

Related to #21

@dalf
Copy link
Member

dalf commented Feb 26, 2020

@dalf
Copy link
Member

dalf commented Feb 29, 2020

#28 is merged.
Things could be better, but instances at the top of the list are usable.
Feel free to reopen this issue is required.

@dalf dalf closed this as completed Feb 29, 2020
@unixfox
Copy link
Member Author

unixfox commented Apr 7, 2020

I'm seeing a same behavior now. Some instances on the top of searx.space returns most of the time no results (with default settings), it requires pressing enter again and again to have results.
I made a screenshot of the home page of searx.space and the instances in red have this issue:
Screenshot_2020-04-07 Searx instances
I don't really know how to deal with that issue but it could be that by chance searx-stats2 check the instance at a time when it returns results but if it retried a second time it would have detected no results.

@dalf
Copy link
Member

dalf commented Apr 7, 2020

For information, searx-stats2 checks every 3 hours each instance with 3 requests:
https://github.com/dalf/searx-stats2/blob/46b51b8e45a1acff4b0293d83b9de84b6630ca97/searxstats/fetcher/timing.py#L139-L143
There is a delay between 120 and 160 seconds between each request.

I don't see a simple solution to improve the issue you are describing.

Some ideas:

If both ideas are implemented, searx-stats2 can have a better idea of which instance is reliable.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants