Extension talk:CheckUser

Jump to navigation Jump to search

About this board

2600:8801:1F00:675:D96B:83A0:888B:12EE (talkcontribs)

I'm running MW 1.26.3 and PHP 7.0.32 and am trying to follow the instructions here. I have shell access and did the git clone command. After adding in the LocalSetting stuff I get error code 500. Doing php maintenance before was fine, but after adding it in I get this error:

  1. PHP Fatal error: Uncaught exception 'Exception' with message '/SNIP/extensions/CheckUser/extension.json: unsupported manifest_version: 2' in /SNIP/includes/registration/ExtensionRegistry.php:184

Asked in the IRC channel and they were saying the instructions are not correct and that install.php should not be used here for any version, then said it should be but that an older version of CheckUser needs to be obtained. They told me to run git checkout origin/REL1_26 but that did nothing.

Please fix the instructions for MW 1.26

星耀晨曦 (talkcontribs)

Please run git checkout REL1_26, it will checkout the code to version 1.26. By default, the cloned code is the latest code and is probably not compatible with your MW version. Note: Your MW version is very old and unsupported, I recommend you to upgrade to 1.31.

Reply to "Instructions are wrong"
Summary by 机智的小鱼君


机智的小鱼君 (talkcontribs)
[6e1c670f739f92204931b713] 2018-10-12 19:35:37: 类型“Wikimedia\Rdbms\DBQueryError”的致命错误

What is that mean , I feel very confused……

Ciencia Al Poder (talkcontribs)

See Manual:How to debug to enable the display of exception details and have a more meaningful error message. Maybe you forgot to run update.php after installing the extension?

机智的小鱼君 (talkcontribs)

THX,I forgot run update.php!

Does not log x-forwarded-for(xff) any more, why?

Summary by Zoglun

x-forwarded-for(xff) only show if you choice "Get edits from IP".

Zoglun (talkcontribs)

Wiki is placed behind Cloudflare for Dos protection. I am very sure that I have set varnish/nginx correctly. I can see the x-forwarded-for value in debug log to be:

X-FORWARDED-FOR my-ip, cloudflare-ip,

However, checkuser page only show the cloudflare ip, without any xff logged.

I tried to modify the x-forwarded-for log to be my-ip, However, checkuser still show the cloudflare ip.

$wgUsePrivateIPs = true; and $wgSquidServersNoPurge added for sure.

How can I get the real IP? or at least enable the xff logged? (talkcontribs)

For some reasons all users (as it seems) are making all changes from the server IP, like in logs all users have the same adress, and thats actually my server IP address. Don't really understand, why.

/xff works fine, but still thats does not seems right

Ciencia Al Poder (talkcontribs)
Reply to "All the same IPs"

I can't install this extension...

Guycn2 (talkcontribs)

I've added the following code to the LocalSettings.php file:

wfLoadExtension( 'CheckUser' );

But yet, the checkuser extension is not being installed!

What can I do?

Clarkcj12 (talkcontribs)

If that does not try if you are running nginx I would recommend clearing your php-fpm. As well as sometimes it hasn't cleared the cache for it. (talkcontribs)

you need to run update.php to generate the sql tables

Reply to "I can't install this extension..."
Summary by 윈도우맨

I updated mediawiki. It solved

윈도우맨 (talkcontribs)

I installed CheckUser with

wfLoadExtension( 'CheckUser' );

and I tested checking user's IP. But then It says:

[e0eb3a86552656b533d4c0e5] /wiki/index.php/%ED%8A%B9%EC%88%98:%EC%82%AC%EC%9A%A9%EC%9E%90%EA%B2%80%EC%82%AC DBQueryError from line 1054 of /Volumes/WindowsMan/WebServer/Documents/wiki/includes/libs/rdbms/database/Database.php: A database query error has occurred. Did you forget to run your application's database schema updater after upgrading? 
Query: SELECT cuc_ip,cuc_ip_hex,COUNT(*) AS count,MIN(cuc_timestamp) AS first,MAX(cuc_timestamp) AS last FROM `cu_changes` FORCE INDEX (cuc_user_ip_time) WHERE cuc_user = '1' AND (1 = 1) GROUP BY cuc_ip,cuc_ip_hex ORDER BY last DESC LIMIT 5001 
Function: CheckUser::doUserIPsRequest
Error: 1146 Table 'thwiki.cu_changes' doesn't exist (localhost)

#0 /Volumes/WindowsMan/WebServer/Documents/wiki/includes/libs/rdbms/database/Database.php(912): Database->reportQueryError(string, integer, string, string, boolean)
#1 /Volumes/WindowsMan/WebServer/Documents/wiki/includes/libs/rdbms/database/Database.php(1254): Database->query(string, string)
#2 /Volumes/WindowsMan/WebServer/Documents/wiki/extensions/CheckUser/specials/SpecialCheckUser.php(492): Database->select(string, array, array, string, array)
#3 /Volumes/WindowsMan/WebServer/Documents/wiki/extensions/CheckUser/specials/SpecialCheckUser.php(79): CheckUser->doUserIPsRequest(string, string, integer)
#4 /Volumes/WindowsMan/WebServer/Documents/wiki/includes/specialpage/SpecialPage.php(522): CheckUser->execute(NULL)
#5 /Volumes/WindowsMan/WebServer/Documents/wiki/includes/specialpage/SpecialPageFactory.php(577): SpecialPage->run(NULL)
#6 /Volumes/WindowsMan/WebServer/Documents/wiki/includes/MediaWiki.php(283): SpecialPageFactory::executePath(Title, RequestContext)
#7 /Volumes/WindowsMan/WebServer/Documents/wiki/includes/MediaWiki.php(851): MediaWiki->performRequest()
#8 /Volumes/WindowsMan/WebServer/Documents/wiki/includes/MediaWiki.php(512): MediaWiki->main()
#9 /Volumes/WindowsMan/WebServer/Documents/wiki/index.php(43): MediaWiki->run()
#10 {main}

What could I do?

Wargo (talkcontribs)
윈도우맨 (talkcontribs)

Thank you. It works!!

Cats legs (talkcontribs)

Are there plans to implement a global CheckUser feature? I've seen previous discussion of the topic, but it's now 4 years old and there's been no progress. The value of a global CheckUser feature is immense, both for non-WMF sites and the WMF itself.

Often abuse isn't limited to a single site, especially if it's part of a larger farm or WMF project. Being able to see all accounts using a specific IP across all projects should help in mitigating abuse on the smaller projects where it would otherwise go unnoticed. Spammers using bots and other automated can hit several projects at once, and it would be difficult to detect the spam on smaller projects without many active users.

The more subtler spammers are difficult to catch too - those who insert external links to their own websites on multiple projects. While individually it may not be obvious, taken across all WMF projects it can be more easily spotted and removed.

Reply to "Global CheckUser"

I fonud error with mw 1.28.0

Summary by Ciencia Al Poder
Tunglinwu (talkcontribs)

This extension will let RecentChanges can't record.

Papamanman2 (talkcontribs)

Same problem had occured in my instance.

When uninstalled CheckUser Extension, Recent Changes records.

Albert Ke (talkcontribs)

Had the same problem, RecentChanges won't record anymore when this the CheckUser extension is loaded in LocalSettings.php for MW 1.28.0. To get it working I did the following:

  1. instead of using MW auto download I actually went to the repository and cloned the right 1.28.0 version;
  2. ran in MW/maintenance the php ./update.php command before adding the CheckUser line to my LocalSettings.php;
  3. included the extension in LocalSettings.php and ran MW/maintenance update.php again;
  4. in the Extension/CheckUseer folder did composer install;
  5. in CheckUser/maintenance did: php ./populateCheckUserTable.php.

RecentChanges does afterwards record the edits so maybe not all above actions are needed but somehow got it to work. Hope that helps other people,

--Albert Ke (talk) 03:04, 12 January 2017 (UTC)

Reply to "I fonud error with mw 1.28.0"
ShahadatHossain (talkcontribs)
Ciencia Al Poder (talkcontribs)

Manual:How to debug:

$wgShowExceptionDetails = true;
$wgShowSQLErrors = true;
$wgDebugDumpSql  = true;
$wgShowDBErrorBacktrace = true;
Reply to "error" (talkcontribs)

Is there a way to remove the checkuser group? Removing it from CheckUser.php doesn't make it disappear. It's as if it's embedded into it or something. And even if I change it with the name of another group, it still won't disappear and neither will those rights be added to that group....

Ficell (talkcontribs)

I have same issue, too. Are there someone know this? (talkcontribs)

All right, so I figured it myself after all (in the checkuser folder, in the extension.json file, replace the first 'checkuser' from here to any group that you want to have the permission "GroupPermissions": { "checkuser": { "checkuser": true, "checkuser-log": true } (talkcontribs)

I think you should change $wgGroupPermissions the way you want. See Manual:User_rights for more info on how to remove a group!

Reply to "Removing group"