Перейти к содержанию
Авторизация  
Admin

Плагин-логгер CoreProtect - команды

Рекомендуемые сообщения

CoreProtect

вики | bukkit | rubukkit | подробный мануал по командам

С версии 1.8 переходим на этот плагин вместо Prism.

 

Откат грифа без содержимого сундуков делается с явным указанием определённого параметра!!

/co rb u:user t:time r:radius a:block

 

На всякий случай скопипастил мануал:

Скрытый текст

 

CoreProtect Commands

You can access the commands using either "/coreprotect", "/core", or "/co".

Quick Command Overview:
 

/co help - Display a list of commands

/co inspect - Toggle the inspector

/co rollback <params> - Rollback block data

/co restore <params> - Restore block data

/co lookup <params> - Advanced block data lookup

/co purge <params> - Delete old block data

/co reload - Reload the configuration file

/co version - View the plugin version


Shortcut Commands:
 

/co near - Performs a lookup with a radius of 5

/co undo - Revert a rollback/restore via the opposite action


Detailed command information is listed below.




| /co help
Display a list of commands in-game.




| /co inspect
Enable the inspector. Type the command again to disable it. You can also use just "/co i".




| /co rollback u:<user> t:<time> r:<radius> a:<action> b:<blocks> e:<exclude>
Nearly all of the parameters are optional. Shortcut: "/co rb".
 

Quote:

u:<user> - Specify a user to rollback.
Example: u:Notch

 

Quote:

t:<time> - Specify the amount of time to rollback
You can specify weeks,days,hours,minutes, and seconds.

Example: t:2w,5d,7h,2m,10s

You can pick and choose time amounts. 
Example: t:5d2h

You can also use decimals
Example: t:2.50h (2 and a half hours)

 

Quote:

r:<radius> - Specify a radius.
You can use this to only rollback blocks near you.

You can specify a number (e.g. r:5), a world (e.g. r:#world_the_end), a global rollback (r:#global), or a WorldEdit selection (r:#worldedit or r:#we)

For example, the following would only rollback damage within 10 blocks of where you are standing: r:10

 

Quote:

a:<action> - Restrict the lookup to a certain action
For example, if you wanted to only rollback blocks placed, you would use a:+block

Here's a list of all the actions:

a:block (blocks placed/broken)

a:+block (blocks placed)

a:-block (blocks broken)

a:click (player interactions)

a:container (items taken from or put in chests, etc.)

a:+container (items put in chests, etc.)

a:-container (items taken from chests, etc.)

a:kill (mobs/animals killed)

a:chat (messages sent in chat)

a:command (commands used)

a:session (player logins/logouts)

a:+session (player logins)

a:-session (player logouts)

a:username (username changes)

 

Quote:

b:<blocks> - Restrict the rollback to certain block types.
For example, if you wanted to only rollback stone, you would use b:1
You can specify multiple items, such as b:1,5,7

You can find a list of block type IDs at http://www.minecraftwiki.net/wiki/Data_values

 

Quote:

e:<exclude> - Exclude certain block types from the rollback.
For example, if you don't want TNT to come back during a rollback, you would type e:46

 

Quote:

#<hashtag> - Add a hashtag to the end of your command to perform additional actions.
For example, to perform a rollback preview, you would use #preview

Here's a list of available hashtags:

#preview (Preview a rollback/restore)

#count (Return the number of rows found in a lookup query)

#verbose (Display additional information during a rollback/restore)

#silent (Display minimal information during a rollback/restore)






| /co restore u:<user> t:<time> r:<radius> a:<action> b:<blocks> e:<exclude>
Same parameters as /rollback. Shortcut: "/co rs".

Restoring can be used to undo rollbacks.




| /co lookup u:<user> t:<time> r:<radius> a:<action> b:<blocks> e:<exclude>
Search through block data using the same parameters as /co rollback. Shortcut: "/co l".

If multiple pages are returned, use the command "/co lookup <page>" to switch pages.
To change the number of lines displayed on a page, use the command "/co lookup <page>:<lines>". 

For example, "/co l 1:10" will return 10 lines of data, starting at the first page.




| /co purge t:<time>
Purge old block data. Useful for freeing up space on your HDD if you don't need the older data.

For example, "/co purge t:30d" will delete all data older than one month, and only keep the last 30 days of data.

If used in-game, only data older than 30 days can be purged. If used from the console, only data older than 24 hours can be purged.




Example Rollback Commands:

>>By default, if no radius is specified, a radius of 10 will be applied, restricting the rollback to within 10 blocks of you. Use "r:#global" to do a global rollback.

Rollback Notch 1 hour (with default radius of 10):
/co rollback u:Notch t:1h

PREVIEW rolling back Notch 1 hour (with default radius of 10):
/co rollback u:Notch t:1h #preview

Rollback Notch 23 hours and 17 minutes (with default radius of 10):
/co rollback u:Notch t:23h17m

Rollback ONLY stone placed/broken by Notch within the last hour (with default radius of 10):
/co rollback u:Notch t:1h b:1

Rollback ONLY stone BROKEN by Notch within the last hour (with default radius of 10):
/co rollback u:Notch t:1h b:1 a:-block

Rollback EVERYTHING Notch did in the last hour EXCEPT for stone he placed/broken:
/co rollback u:Notch t:1h r:#global e:1

Rollback griefing Notch did in the last hour that is within 20 blocks of you:
/co rollback u:Notch t:1h r:20

Rollback griefing Notch did in the last hour ONLY in the Nether:
/co rollback u:Notch t:1h r:#nether

Rollback everything done in the last 15 minutes by anyone within 30 blocks of you:
/co rollback t:15m r:30

Rollback everything done in the last 15 minutes in a WorldEdit selection:
/co rollback t:15m r:#worldedit




Example Lookup Commands:

>>Lookup commands are generally the same as rollback commands. The primary difference is that a default radius is not applied to lookups, meaning all lookup commands do a global search by default.

Lookup all diamond ore mined in the last hour:
/co lookup b:56 t:1h a:-block

Lookup all chat messages sent by Notch in the last 30 minutes:
/co lookup u:Notch t:30m a:chat

Lookup all logins ever done by Notch:
/co lookup u:Notch a:login

Lookup all logins ever done by Notch:
/co lookup u:Notch a:login

Lookup previous usernames used by Notch:
/co lookup u:Notch a:username

 

 

 

 

Чистим БД ручками через phpMyadmin:

Спойлер

 

Проверяем инфу о БД в ISP Manager. Берём данные БД либо с бумажки, либо из конфига плагина-логгера.

Заходим во вкладку "Structure" и смотрим конкретные таблицы и сколько они занимают места (например, таблица с записями о блоках - 6Гб, а следующая по размеру - таблица с записями о взаимодействиями с сундуками - всего на 180 метров; это за год онлайна 5-10 игроков).

 

Цитата

 

Смотри, командой DELETE FROM `co_block` WHERE `time` < 1443661261 можно удалить записи, которые были раньше 1 октября 2015 года

 

Вычисляем нужное нам время тут:
http://www.onlineconversion.com/unix_time.htm

 

Подставляем его в команду.

 

 `co_block` - это название конкретной таблицы, которое можно поменять на нужную (например, на таблицу контейнеров, которая занимает 180 метров).

 

Цитата

 

Заходишь во вкладку SQL, вводишь команду. Для нужной таблицы меняешь название таблицы (после DELETE FROM)

 

Во вкладку SQL заходим после выбора нужной таблицы.

 

После нажатия на кнопочку "Go" всё будет очень, очень долго - прям, возможно, часы и никакой индикации ))))

 

 


 

 

Предыдущий вариант почему-то не прокатил и выдавал ошибку - пришлось удалять по порядковым номерам записей.

 

Цитата

 

DELETE FROM `co_block` WHERE `rowid` < 400000

(удалить записи с rowid < 400000)

 

Чтобы правильно выбрать самую древнюю запись, необходимо зайти в таблицу и посмотреть номер первой записи в колонке "rowid"

 

 

DELETE FROM `co_block` WHERE `rowid` < 400000 AND `user` = 102
а так удаляются записи определённого пользователя (в данном случае - "вода") до определённой id

 

SELECT COUNT(*) FROM `co_skull` - можно узнать актуальное количество записей в таблице

ANALYZE TABLE `co_skull` - а этот запрос по идее должен пересчитывать актуальное количество

 

 


 

 

Спойлер

 

А потом Макс сказал, что всё это фигня и таким способом место на диске не освободить.

 

Цитата

 

[27/01/16 20:35:14] Riot: Тип таблиц - innodb

[27/01/16 20:35:31] Riot: При их удалении, их кеш остается на диске и место не освобождается)
 
Решается только экспортом таблицы, тотальным удалением файлов базы (а к ним на хостинге нет доступа) и импортом обратно)
 
Но при этом в ТП хостинга мне сказали, что всё-таки надо самостоятельно удалять записи ручкми...

 

 

Задал вопрос на форуме хостинга - тык...

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Кто может подтвердить или опровергнуть работоспособность этого плагина на Спиготе для 1.9?

Можете ли протестировать это лично?

Естественно, когда будет доступен Спигот для 1.9.

Насколько я знаю, его выложат вместе с релизом ванилы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Чайник, сможешь как-нибудь при наличии времени помочь решить проблему с коннектом к БД на веб-хостинг?

Видимо, по скайпу (точно не в вск).

 

У меня ни разу не получилось настроить подключение к БД на новом веб-хостинге...
 

[14:12:02] [server thread/WARN]: [AutoSaveWorld] Plugin CoreProtect attempted to establish connection socket://xxx.xxx.xxx.xxx:xxxx in main server thread
[14:12:03] [server thread/WARN]: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Access denied for user 'xxxxxxxxxx'@'%' to database 'xxxxxxxxx'
 
Красное прописано в конфиге и сможем обсудить по скайпу :)
 

 
UPD:
Надо было просто дописать IP, с которого происходит подключение )

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

 

так и не запомнил, что рамки тоже нужно исключать из выборки, иначе предметы в них теряют эффекты, а карты меняют номер

Пипец!

А как это делать?

Просто следить, чтобы рамки не попадали в зону отката?

 

e:chest,trapped_chest,item_frame

Исключает из выборки сундуки, сундуки-ловушки и рамки. Желательно так делать, а сундуки и рамки обрабатывать индивидуально для каждой строки логов. Но я забываю.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Откуда мод берёт информацию я без понятия, не я ж его делал :)

Скорей всего эта информация записывается где то в настройках карты. Если это так, то 133 дня это примерно 40 часов ±7 часов, если учитывать нестабильность ТПС. Получается ~2 дня назад информация о времени сбросилась. Ну это если верить моду.

 

А про нюансы чистого онлайна, это я просто пытался прикинуть более идеальную цифру

Информация о возрасте мира ещё в F3 показывается. На скрине от 12 мая (последний с экраном отладки) написано, что серверу 4525 дней =~12,4 года. Полагаю, переход на новые версии периодически сбрасывает эту цифру.

 


 

Плагин CoreProtect совсем сливается. Поломки не откатывает - второй раз пытаюсь откатить полтора десятка блоков в метеостанции, логи (co i) выдаёт либо быстро,  либо с длинной (в районе 15-30 минут) задержкой. Это, конечно, может быть связано с хостингом, но что-то мне подсказывает, что то, что последняя версия плагина написана под 1.8, тоже может сыграть роль.

До 1.9 обновился LogBlock, и, кажется, к этому же идёт Prism (последняя удачная сборка: "Prism-3.0.0-beta2-3-g07e32ca-all.jar").

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Достижения

Мне кажется, что Prism под Sponge фигачат...

Это можно как-то определить?

А лог-блок клёвый?

+ можем откатываться для важных дел на 1.9.2 и там работать с CoreProtect )))

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

LogBlock - единственный из тех, которые я глянул, который обновлён хотя бы до 1.9. Он, вроде, стоял у нас какое-то время, разве нет?

Изменено пользователем OcelotJungle

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Достижения

Я только слышал о нём, но вроде не ставил, т.к. Prism был круче всех.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Попробую обновить под 1.10 сегодня.

https://dev.bukkit.org/bukkit-plugins/coreprotect/files/71-core-protect-v2-13-1/

 

Цитата

CoreProtect 2.13.1

  • Added check to determine if server is running Java 1.7 or higher before starting plugin.
  • Changed MySQL connection handler to use a connection timeout instead of a network timeout.
  • Fixed dynamic patching system failing to detect JAR file under certain conditions.

CoreProtect 2.13.0

  • Added logging for all 1.9/1.10 block and entity types.
  • Improved internal patching system to dynamically detect new patches.
  • Improved purges by having them defragment/recreate the entire database.
  • Improved MySQL connection handling & SQLite index handling.
  • Changed minimum requirements from Java 1.6 to Java 1.7.
  • Fixed internal caches becoming corrupted if the database format (MySQL/SQLite) is switched via "/co reload".
  • Fixed lookups with invalid radius parameters returning confusing results.
  • Fixed being unable to use "block:skull" as a valid lookup parameter.
  • Fixed "/co l u:<user> a:username" randomly failing due to an issue with the UUID cache.
  • Fixed purges on SQlite databases failing under certain conditions. [TICKET-536]
  • Fixed items dragged across slots in chests not being logged. [TICKET-550]
  • Fixed right clicking with the inspector performing a lookup twice. [TICKET-539]
  • Fixed slanted rails not being logged as broken when the adjacent block is removed. [TICKET-421]

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Пришлось почистить БД (>4.5 Гб из 5 доступных).

До этого момента у нас были данные с Sun, 03 Apr 2016 06:36:03 GMT.
Думаю, что гига 3-4 попробую отчистить...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

27 минут назад, Admin сказал:

Пришлось почистить БД (>4.5 Гб из 5 доступных).

До этого момента у нас были данные с Sun, 03 Apr 2016 06:36:03 GMT.
Думаю, что гига 3-4 попробую отчистить...

Надеюсь, удалял не логи гриферства, а всякий мусор вроде убийств мобов etc.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Достижения

2 минуты назад, OcelotJungle сказал:

Надеюсь, удалял не логи гриферства, а всякий мусор вроде убийств мобов etc.

4 Гб из 4.5 занимает инфа о блоках.

 

Скрытый текст

T7BXl5W.png

 

Можно перенести сайт и БД на VPS и тогда под БД можно хоть 15 Гб выделить, но я этого делать не могу, а у Чайника и Макса не так много времени, чтобы с этим возиться.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Логер показывает инфу только по конкретному блоку? Просто есть вероятность, что ко мне на склад проникли и что-то украли, а ,сломав какой блок, проникли я не знаю

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Достижения

2 минуты назад, MisterRedCarrot сказал:

Логер показывает инфу только по конкретному блоку? Просто есть вероятность, что ко мне на склад проникли и что-то украли, а ,сломав какой блок, проникли я не знаю

Можно посмотреть все действия в определённом радиусе. В идеале - сильно ограничить этот радиус и временной промежуток, когда были совершены предполагаемые противоправные действия.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

47 минут назад, JinenryokuFu сказал:

Нет, ничего не откатываю, потому что Оцелот велел не трогать. Ему сейчас некогда объяснить, а там есть нюансы. Я потому про это в теме модераторов и пишу. Потому что вики кратка и тут нужен практический опыт. Экспериментировать на сервере немного неловко. Вот записать бы алгоритм...

В первом посте есть ссылка на подробный мануал.

Самое главное - всегда указывать сначала: радиус действия (обычно не больше 10-20 блоков) и только потом все остальные параметры!!

 + всегда есть возможность отката сделанных изменений = небольшая подстраховка с нюансами

 

Когда выяснил, кто нарушитель и что разрушено, нужно выполнить простую команду отката:

/co rollback r:10 u:<ник_нарушителя> t:<нужное_количество_часов/дней_(10h/3d)>

 

В принципе, такая команда покрывает почти все стандартные ситуации.

Если поймёшь, что совершил ошибку, то лучше остановиться и ничего не делать, чем косячить дальше и ухудшать ситуацию.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

и там где-то еще было exept e:(рамки),(сундуки), его добавлять, надо ведь, да?

Изменено пользователем JinenryokuFu

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Достижения

53 минуты назад, JinenryokuFu сказал:

и там где-то еще было exept e:(рамки),(сундуки), его добавлять, надо ведь, да?

По ситуации.
Я ни разу с подобным не сталкивался.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Очень странно. Вчера в вк у меня было аж три вопроса, а сегодня этих сообщений нет о.О

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Достижения

К сожалению, придётся прямо сейчас почистить БД плагина-логгера, т.к. осталось свободно всего метров 200...

 

Большую часть занимают, как всегда, данные о блоках = чистить будем только их.

Скрытый текст

YYITPOy.png


 

Самые старые данные датируются июлем:

Sun, 17 Jul 2016 16:56:08 GMT

 

Попробую почистить пару Гб.

 

 

P.S.: к сожалению, увеличение места для БД возможно только при переезде на VPS, что немного геморно и дороже...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Все тут же пошли что-либо тырить

Или счастливо потёрли лапки, что их тыренье не распознают :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Достижения

1 час назад, Grig_Kosilov сказал:

Все тут же пошли что-либо тырить

Или счастливо потёрли лапки, что их тыренье не распознают :)

У меня руки, а не лапки111!!!111

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Достижения

10 часов назад, Grig_Kosilov сказал:

Все тут же пошли что-либо тырить

Или счастливо потёрли лапки, что их тыренье не распознают :)

Последний месяц логов из игры стереть нельзя.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Достижения

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

  • Похожий контент

    • От Admin
      Иходники
       
      Новый конфиг:
      https://t.me/bbyaw/152856
       
      Чуть подробнее:
      https://t.me/bbyaw/152895
       
       
       
       
       
      Помогите найти плагин, который будет передавать значения переменных на сайт - по запросу при обращении к этому плагину.
      Ну, грубо говоря, как динмапа - к этому плагину же обращаются, и он явно что-то забирает с сервера и передаёт в браузер по запросу.
       
      Вот, нужно только передавать значения запрашиваемых переменных
       
       
       
      Варианты такие:
      либо уже готовый плагин с открытым исходным кодом либо помочь сделать  
      Если поможете найти готовый, который мы в итоге поставим на сервер, готов отблагодарить вас в размере 10к зелёненьких

      P.S.: @OcelotJungle, если есть желание наковырять подобный плагин самостоятельно, то я бы обсудил условия в вк ))
    • От Rock_tea
      Список команд:
      /send - передать изумруды другому игроку, онлайн. Подробности и размер комиссии - "/send" в игре. Ведется лог операций. /mute, /unmute - заткнуть/размутить игрока. Доступны игрокам с тегом "Muter". Автоматический 10-минутный мут. Отслеживает основные матюки, на всякий пожарный. Ведется лог выражений. /tags - пишет игроку список его тегов. /inv - показывает содержимое в кэше. Инвентарь сохраняется в кэш на ивентах или при попадании в тюрьму.  
      Команды ГМ
      /inv list - список игроков, чьи инвентари находятся в кэше. /inv take PlayerName - перемещает инвентарь игрока в кэш. /inv give PlayerName - возвращает игроку инвентарь из кэша, заменяя инвентарь игрока. /inv givechest PlayerName - создает двойной сундук и перемещает туда инвентарь из кэша.  
       
    • От Admin
      Неплохой плагин для сохранения и бэкапа мира.
      Давно с ним дружу, но настраивается он сложно.
       
      Инфа | FAQ | Свежие версии
       
       
      Как залить на Dropbox:
       
       
      Решил продублировать FAQ:
       
       
       
       
      Мне нужна помощь с настройкой удалённой отправки бэкапов без использования диска на хостинге сервера.
      Устроит любой вариант - хоть FTP, хоть Dropbox (думаю, что с этим сложнее).
       
      В первую очередь, нужна помощь с правильными параметрами отправки бэкапов на удалённый FTP.
      Вопрос по этой секции конфига:
      backup: enabled: true interval: 86400 savebefore: true broadcast: true rateLimit: -1 localfs: enabled: true destinationfolders: - /game/test/. zip: true worlds: - '*' MaxNumberOfWorldsBackups: 15 pluginsfolder: false MaxNumberOfPluginsBackups: 15 otherfolders: [] MaxNumberOfOtherFoldersBackups: 15 excludefolders: [] ftp: enabled: false sftp: false hostname: 127.0.0.1 port: 21 login: user password: password path: asw zip: false worlds: - '*' pluginsfolder: false otherfolders: [] excludefolders: [] maxNumberOfBackups: 4 Нужно настроить плагин так, чтобы:
      в идеале на хостинге сервера вообще не создавались файлы бекапа из-за нехватки места нужно сразу отправлять бэкап на фтп, если это возможно в идеале - сразу заархивированным если не получится создавать архив на лету, то в идеале - отправлять файлы на удалённый FTP, там архивировать их и автоматически удалять по завершении процедуры. Нужно именно постараться провести успешный тест. Теоретически могу выделить тестовые сервера для этого, но лучше провести тест самостоятельно.
       
      В общем, я так понимаю, что: отключу - автобэкап, сохранение локальных файлов (это не сработало - всё равно локально создаёт файлы), включу - фтп и архивацию.
      Вчера, во время тестов, я ни разу не увидел архивов. Ранее, год или два назад я уже юзал этот плагин и тогда архивы, вроде бы, создавались...
       
      Заранее спасибо
       
       
    • От Admin
      Исходники
       
      Через команду /gc можно посмотреть все возможности.
       
       
       
      @OcelotJungle сделал первый плагин под нужды сервера.
      Постараемся перевести систему гильдий и кланов на собственный плагин.
      Если всё получится, то перебалансировать систему гильдий будет проще простого )))
       
      Уже сейчас попросили небольшую консультацию у @newoldmax и @RedTeapot, чтобы они помогли устранить явные косяки.
      Теперь обращаемся ко всем спецам по плагинам и тем, кто только начинает творить свои плагины: помогите нам отладить код и функционал плагина.
      Если будут какие-то замечания, рекомендации, советы или просто вопросы, обращайтесь тут - обсудим
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×