Blog

  • Magento tips ( maintenance )

    Продължавам да се занимавам с едно ултра „добро“ Магенто, че ми се наложи това за да го дебъгна т.е. да го спра за секунда и да го пусна отново 🙂

    Сtatus на магентото
    php bin/magento maintenance:status

    Добавяне на IP което може да отваря магенто по време на поддръжка
    php bin/magento maintenance:allow-ips 8.8.8.8

    Списък на ip-тата които могат да отварят магенто по време на поддръжка
    php bin/magento maintenance:allow-ips

    Спиране на магенто за поддръжка
    php bin/magento maintenance:enable

    Стартиране на магенто след поддръжката
    php bin/magento maintenance:disable

  • Elasticsearch Index Status е ‘червен’, а трябва да е ‘зелен’ Fix- (Magento Sux)

    Идеята е да се поправи magento със status „red“ 🙁

    За целта изпълнявам грубо казано това:

    0. Превключваме временно към mysql search engine

    1. За да проверим статуса на индекса:
    curl -m1 localhost:9200/_cluster/health?pretty

    2. Преглеждаме индексите:
    curl –silent -X GET localhost:9200/_cat/indices?v

    3. Изтриваме индексите:
    curl -XDELETE localhost:9200/*

    4. php magento indexer:reindex

    5. php magento indexer:status

    /var/www/magento-live/bin # curl –silent -X GET localhost:9200/_cat/indices?v
    health status index uuid pri rep docs.count docs.deleted store.size pri.store.size
    green open magento2_en_catalog_product_20201015_163059 jUDhUAAmRAKy4YVR9R9_BQ 1 0 49986 0 36.3mb 36.3mb
    green open magento2_bg_catalog_category_20201015_163116 f8MeZFvKRp6hyiy3FPp6CA 1 0 116 0 341.5kb 341.5kb
    green open magento2_bg_tracking_log_event_20201015 ptX7KBhmTYeC83CBzb4VPA 1 0 9 0 39.1kb 39.1kb
    green open magento2_bg_thesaurus_20201015_163119 Vv3pUf7VReq3pdCMBf2gKg 1 0 0 0 230b 230b
    green open magento2_bg_tracking_log_session_20201015 kYrAfzUxRtSMUoaYsr2Rmg 1 0 1 0 4.9kb 4.9kb
    green open magento2_en_catalog_category_20201015_163117 aeiRjcIvTpytVF1d0VtxVA 1 0 116 0 348.3kb 348.3kb
    green open magento2_bg_catalog_product_20201015_163048 o787i88OTTmBiiYKW6zZ0Q 1 0 50294 0 36.1mb 36.1mb
    green open magento2_en_thesaurus_20201015_163119 NSOrCmgLQoyIbObCSWQPbw 1 0 0 0 230b 230b

    Тук са няколко хиледи индекси

    След като изтрием виждаме, че статус е вече, green

    /var/www/magento-live/bin # curl -m1 localhost:9200/_cluster/health?pretty
    {
    „cluster_name“ : „elasticsearch“,
    „status“ : „green“,
    „timed_out“ : false,
    „number_of_nodes“ : 1,
    „number_of_data_nodes“ : 1,
    „active_primary_shards“ : 8,
    „active_shards“ : 8,
    „relocating_shards“ : 0,
    „initializing_shards“ : 0,
    „unassigned_shards“ : 0,
    „delayed_unassigned_shards“ : 0,
    „number_of_pending_tasks“ : 0,
    „number_of_in_flight_fetch“ : 0,
    „task_max_waiting_in_queue_millis“ : 0,
    „active_shards_percent_as_number“ : 100.0
    }

    elasticsearch_magento_fix_status

  • Peugeot 307sw- Разглобяване на com2000 за поправка на повреден джойстик за мигачи

    Заигравка в неделя 🙂
    Харесва ми тази нискобюджетна колица като играчка е 🙂

    На пежо 307 sw спряха да му работят мигачите като най- често това е проблем в джойстика. Има възможност да се фиксне и самия джойстик, но имах такъв резервен.
    Наложи се да премахна волана, да разглобя com2000 и да заменя стария джойстик с друг. Всичко си заработи супер. Изключително елементарно. Важно е преди да се прави каквото и да е да се разкачи акумулатора. Волана и оста имат тригълници т.е. лесно може да се възстанови т.е. не е задължително да се спира в права линия. Всички конектори и портове са с еднакви цветове т.е. не може да се обърка нищо. Направено е така, че изключително лесно да се разглоби. Битчето за волана е T45.

    Все пак препоръчвам да се обърнете /ако сте от Добрич/ към изключителен техничар- професионалист- Иво /до Самолета на жк. Добротица по ул. Батовска/ На последната снимка от Gmaps може да видите как изглежда работилницата на Иво

    pejo-307sw-smqna-djoistik-migach_razglobqwane_kom_3

    pejo-307sw-smqna-djoistik-migach_razglobqwane_kom_1

    pejo-307sw-smqna-djoistik-migach_razglobqwane_kom_2

    pejo-307sw-smqna-djoistik-migach_razglobqwane_kom_4

    pejo-307sw-smqna-djoistik-migach_razglobqwane_kom_5

    pejo-307sw-smqna-djoistik-migach_razglobqwane_kom_6

    pejo-307sw-smqna-djoistik-migach_razglobqwane_kom_7

    ivo-samoleta-dobrich

  • Намиране на празните файлове под GNU/Linux

    Идеята е да намерим празните файлове(рекурсивно) и респективно ако решим да ги правим нещо, в случая да ги изтрием.

    Листваме всички празни файлове /рекурсивно
    find $PWD -type f -empty

    Изтрива всички празни файлове /рекурсивно
    find $PWD -type f -empty -exec rm -fr {} \;

  • Инсталиране на Eclipse под GNU/Linux ( Hello Java World )

    apt-get update && apt-get install -y openjdk-11-jdk;
    wget http://mirror.umd.edu/eclipse/technology/epp/downloads/release/2020-06/R/eclipse-java-2020-06-R-linux-gtk-x86_64.tar.gz
    tar -zxvf eclipse-java-2020-06-R-linux-gtk-x86_64.tar.gz -C /usr/
    ln -s /usr/eclipse/eclipse /usr/bin/eclipse

    Това е 🙂
    Hello World 🙂 🙂 🙂

    instalirane_na_eclipse_linux

  • Spotify на Linux

    1. Регистрация в spotify.com

    2. Инсталиране на клиента spotify-client

    curl -sS https://download.spotify.com/debian/pubkey.gpg | sudo apt-key add –
    curl -sS https://download.spotify.com/debian/pubkey_0D811D58.gpg | sudo apt-key add –
    echo „deb http://repository.spotify.com stable non-free“ | sudo tee /etc/apt/sources.list.d/spotify.list

    sudo apt-get update && sudo apt-get install spotify-client

    3. Музичка 🙂

    spotify-linux

  • Как да си изключим монитора под GNU/Linux

    Един стар съученик ме пита как да си изключи монитора след 8 часа. С „коя команда става“. Ето и как става:

    xset dpms force off

    Ако трябва да има изчакване 8 часа то се ползва:
    1. Sleep секунди
    sleep 28800;xset dpms force off
    #На практика ще изчака 28800 секунди и ще изключи монитора

    2. Може да се направи с cron

    3. Има още 919191 начина

    izkliuchvane_na_monitor_linux

  • Magento indexer:reindex и indexer:status

    Прехвърляме на един клиент магазина от нИвИрУятнотУ „Magento“ на наша къстъм система и респективно все проблеми проблеми, че трябва да го съпортваме докато го прехвърлим. Явно това е от използваните също нИвИрУятни команди за него. Може да са полезни за някои Magento фен 😛

    За мен да ползваш готова система за сериозен сайт е като да ползваш от тия стандартните кухни за 150 лв.(не, че нещо, ама си е така). Качеството си има цена. Да по продуктивни са от към време за изработка И ТОЛКОЗ(за недостатъците няма да говоря, че много писане ще падне), разбира се точно както стандартните кухни. Слагаш една кухня за 5 минути и готово, ама какво е готово е друг въпрос 🙂 Въпрос на гледна точка.

    /etc/init.d/elasticsearch restart
    Рестартира демона ElasticSearch

    php magento indexer:status
    Показва статуса на индексите

    magento_indexer_status

    php magento indexer:reindex
    Реиндексира всички индекси

    magento_indexer_reindex

  • Как се сменя клавиатура на лаптоп

    Преди време клавиатурата изпи една пълна чаша с кафе, но веднага извадих батерията, разглобих лаптопчето и със сешоара внимателно го изсуших и всичко беше точно с аромат на кафе :).

    Да, ама онзи ден изпи ПЪЛНА чаша с бира , толкова пълна че като го вдигнах потече все едно от изворче. Респективно пак същата работа като с кафето, ама няколко бутона не искат да работят и реших да я сменя.
    Клавиатурата взех от „Компютърни Технологии“, гр. Добрич, а смяната е супер елементарна. Няма нужда от обяснение, а просто от 2-3 снимки. Дано поста Ви е бил полезен.

    smqna-klaviatura-laptop_1

    smqna-klaviatura-laptop_2

    smqna-klaviatura-laptop_3

    smqna-klaviatura-laptop_4

    smqna-klaviatura-laptop_5

    Резултата:

    smqna-klaviatura-laptop_6

  • Magento – SUX

    Това Magento просто не съм очаквал, че е толкова бъгаво НЕЩО:

    tail -f log/exception.log

    Проблем N1:

    [2020-09-07 14:45:00] main.CRITICAL: No alive nodes found in your cluster {„exception“:“[object] (Elasticsearch\\Common\\Exceptions\\NoNodesAvailableException(code: 0): No alive nodes found in your cluster at /var/www/magento-live/vendor/elasticsearch/elasticsearch/src/Elasticsearch/ConnectionPool/StaticNoPingConnectionPool.php:53)“} []

    Решение N1: /etc/init.d/elasticsearch restart

    Проблем N2:

    [2020-09-07 14:45:40] main.CRITICAL: catalog_product index does not exist yet. Make sure everything is reindexed. {„report_id“:“f54001a12b0abb106e826862e505a03f8ea41f3591d4663631a4315af8285696″,“exception“:“[object] (LogicException(code: 0): catalog_product index does not exist yet. Make sure everything is reindexed. at /var/www/magento-live/vendor/smile/elasticsuite/src/module-elasticsuite-core/Index/IndexOperation.php:117)“} []

    Решение N2: php magento indexer:reindex или Reindex от админ панела

    Проблем N3:
    # php magento indexer:reindex
    Design Config Grid index has been rebuilt successfully in 00:00:00
    Customer Grid index has been rebuilt successfully in 00:00:00
    Category Products index has been rebuilt successfully in 00:00:01
    Product Categories index has been rebuilt successfully in 00:00:00
    Catalog Rule Product index has been rebuilt successfully in 00:00:00
    Product EAV index has been rebuilt successfully in 00:00:01
    Stock index has been rebuilt successfully in 00:00:00
    Product Price index has been rebuilt successfully in 00:00:01
    Catalog Product Rule index has been rebuilt successfully in 00:00:00
    Catalog Search indexer process unknown error:
    {„error“:{„root_cause“:[{„type“:“cluster_block_exception“,“reason“:“blocked by: [FORBIDDEN/12/index read-only / allow delete (api)];“}],“type“:“cluster_block_exception“,“reason“:“blocked by: [FORBIDDEN/12/index read-only / allow delete (api)];“},“status“:403}
    Google Product Removal Feed index has been rebuilt successfully in 00:00:00
    Google Product Feed index has been rebuilt successfully in 00:00:00
    ElasticSuite Category Indexing indexer process unknown error:
    {„error“:{„root_cause“:[{„type“:“cluster_block_exception“,“reason“:“blocked by: [FORBIDDEN/12/index read-only / allow delete (api)];“}],“type“:“cluster_block_exception“,“reason“:“blocked by: [FORBIDDEN/12/index read-only / allow delete (api)];“},“status“:403}
    ElasticSuite Thesaurus Indexing indexer process unknown error:
    {„error“:{„root_cause“:[{„type“:“cluster_block_exception“,“reason“:“blocked by: [FORBIDDEN/12/index read-only / allow delete (api)];“}],“type“:“cluster_block_exception“,“reason“:“blocked by: [FORBIDDEN/12/index read-only / allow delete (api)];“},“status“:403}

    Решение N3:
    curl -XPUT -H „Content-Type: application/json“ http://localhost:9200/_all/_settings -d ‘{„index.blocks.read_only_allow_delete“: null}’