×

Goons go on rampage: Who's behind the attacks on government critics?

Goons beat up Mumias East MP Peter Salasya during a football match at Nyayo Stadium between Harambee Stars and Garbon on Sunday 23rd March 2025. [Courtesy]

There is growing concern over a coordinated wave of attacks against government critics, raising alarm about increasing political intolerance.

The violence, characterised by orchestrated assaults and intimidation, has drawn widespread condemnation and exposed deepening fault lines in the nation’s politics.

Defying the very essence of law and order, a disturbing trend of violence has taken root in recent months, with politicians and public figures who dare to criticise the government becoming prime targets.

The culprits— goons, some clad in attire that imitates military gear—act without fear, while the police stand by, their silence louder than sirens.

Even with video evidence capturing these attacks, justice remains elusive, as prosecution of attackers seems a privilege rather than a rule.

Government critics argue that these attacks signal a shrinking democratic space in Kenya, with dissenting voices increasingly threatened.

The most recent incident occurred on Sunday at Nyayo National Stadium, when Mumias East MP Peter Salasya was attacked by a group of youths during a football match between Kenya and Gabon.

Salasya attacked at Nyayo Stadium over Raila

The assailants, chanting “lazima aheshimu Raila” (He must respect Raila), shoved him, hurled objects at him, before the police intervened.

ODM leader Raila Odinga has not commented on the attack.

Salasya, who has been an outspoken critic of both President William Ruto and Raila Odinga, has accused them of forming a political alliance that benefits politicians but sidelines ordinary Kenyans.

“What happened was planned,” Salasya said in a video posted on his X account, adding, “I was the first to invite people to Nyayo Stadium. They took advantage because they knew I would come.”

Salasya, who attended the match without security, recounted how a man followed him from the entrance to the VIP section.

“The moment I entered, someone warned me at the gate. Then a guy was trailing me everywhere,” he said.

Butere MP Tindi Mwale condemned the attack but urged Salasya to respect Raila.

“It was sad and uncalled for to attack my brother Peter Salasya. But Heshima kwa Baba Raila Odinga is paramount and non-negotiable,” Mwale said. “Respect Baba and treat him as a statesman.”

Prime Cabinet Secretary Musalia Mudavadi yesterday denounced the violence, warning that political intolerance threatens democracy.

“We won’t always agree, and that’s okay,” Mudavadi said in a statement. “But respect, dialogue, and unity must remain non-negotiable. If we let division win, we risk tearing down everything we hope to build.”

Goons who beat up Mumias East MP Peter Salasya during a football match at Nyayo Stadium between Harambee Stars and Garbon on Sunday 23rd March 2025. [Courtesy]

Salasya has been bold in his criticism of the President. During the launch of a sugar farmers’ bonus payment at Mumias Sugar Company in January, the MP told the President that his close advisors were misleading him about Kenyans feelings about his administration’s performance.

Natembeya, Gachagua among leaders targeted by political goons

“I want to ask you, Mr President, to hire me as your advisor because your people are not being honest with you,” he said.

Salasya’s case is just one in a growing list of incidents where politicians critical of Ruto’s administration have faced physical threats.

Trans Nzoia Governor George Natembeya, himself a victim of political goon attacks, accused powerful figures for hiring thugs to silence government critics.

“Those hiring goons to attack government critics are doing so because they are serving their stomachs and not Kenyans,” Natembeya said yesterday in a phone interview with The Standard. “They are wasting their time. Even if we were to go silent, others would rise to take our place.”

Natembeya has been targeted multiple times. On March 2, he found himself in trouble when he criticised the government at the home of late Malava MP Malulu Injendi.

Earlier, nominated MCA Joel Okwako had accused the Ruto administration of misleading Kenyans that the Social Health Authority (SHA) and the university funding model were working.

When the MCA invited Natembeya to address the mourners, he criticised Prime Cabinet Secretary Musalia Mudavadi and National Assembly Speaker Moses Wetang’ula. As a result, his microphone was muted, but he continued to speak without one.

“We want to say ‘Tawe’ to bad leadership and corruption. Kenyans are on their own, and we must say no to politicians hiring people to cause violence at funerals,” said Natembeya.

Natembeya faces a hostile crowd

But things escalated when the crowd became hostile and chanted pro-Ruto slogans, forcing the Governor to flee. The mourners were seen throwing various objects, including stones, at Natembeya’s motorcade as it left the venue.

In October 2024, unidentified assailants confronted Natembeya outside former IEBC chairman Wafula Chebukati’s home in Nairobi.

The Governor says these incidents paint a troubling picture of growing hostility toward dissenting voices.

“We have a country to protect. Acts of violence must stop,” Natembeya said.

While attending a funeral in Limuru on November 28, 2024, former Deputy President Rigathi Gachagua was attacked by a group armed with stones, machetes, and iron bars.

His vehicle was damaged and several of his supporters were injured.

Gachagua accused the government of orchestrating the attack. The police made no arrests, fueling claims of State complicity.

“Today, I was at a funeral service in Limuru for a young man called Erastus Nduati. While we were preparing to lay the young man to rest, goons attacked us and the other mourners, including children,” Gachagua said in a statement on X, attaching pictures of his vehicle which was damaged during the incident.

“They descended randomly on mourners and attacked them using weapons. A specific group followed me as I went to my car, which they proceeded to attack with stones and iron bars. We literally drove out of the venue under a hail of rocks!”

A month later, on December 28, a police officer threw a teargas canister near Gachagua’s platform during a prayer meeting in Nyandarua.

While the officer was briefly detained, he was quickly released following intervention by senior officials, according to MPs allied to Gachagua.

Maina Njenga sparks chaos at prayer meeting

Many critics argue that the attacks are politically motivated and aimed at suppressing dissent. Gachagua, a vocal critic of his former boss, has accused the government of orchestrating violence against him.

The government has also been accused of allowing people who are in its good books to get away with crime.

In January, there was drama at Kamukunji Stadium in Nyeri when former Mungiki leader Maina Njenga stormed a prayer meeting led by Dorcas Gachagua, the wife of the former Deputy President.

Accompanied by a group of youths, Njenga’s arrival forced speakers at the podium to cut short their speeches.

As tensions rose, Nyeri Deputy Governor Waroe Kinaniri and Dorcas left hurriedly. Many congregants, mostly women, also exited as Njenga and his supporters chanted victory songs.

After Dorcas left, Njenga took her seat and proceeded to address the gathering, saying the former DP should stop ethnic politics and embrace unity.

Gachagua later condemned the incident. “Unleashing the leader of an outlawed criminal gang and his goons to disrupt peaceful prayers and desecrate the altar is the lowest any government can go, no matter the level of desperation,” he wrote on X.

But responding when he appeared on a radio morning show, Njenga dismissed Gachagua’s claims that the government was using gangs to destabilise the Mt Kenya region.

“He (Gachagua) wants to take me to The Hague, yet he is toothless. That is just yapping,” Njenga said.

Request history8.1.26PHP Version1.23sRequest Duration8MBMemory UsageGET {category}/article/{id}/{slug}Route
    • Booting (14.79ms)time
    • Application (1.21s)time
    • 1 x Application (98.79%)
      1.21s
      1 x Booting (1.21%)
      14.79ms
      11 templates were rendered
      • 1x mainsite.articlearticle.blade.php#?blade
      • 1x mainsite.partials.topsectionsubscribetopsectionsubscribe.blade.php#?blade
      • 1x common.vocalizedvocalized.blade.php#?blade
      • 1x mainsite.partials.footerfooter.blade.php#?blade
      • 1x mainsite.layouts.appapp.blade.php#?blade
      • 1x mainsite.partials.metasmetas.blade.php#?blade
      • 1x mainsite.partials.topbartopbar.blade.php#?blade
      • 1x mainsite.partials.logo_sectionlogo_section.blade.php#?blade
      • 1x mainsite.partials.menumenu.blade.php#?blade
      • 1x mainsite.partials.streamingstreaming.blade.php#?blade
      • 1x mainsite.partials.stickybottomstickybottom.blade.php#?blade
      uri
      GET {category}/article/{id}/{slug}
      middleware
      web
      controller
      App\Http\Controllers\MainsiteController@article
      namespace
      prefix
      where
      file
      app/Http/Controllers/MainsiteController.php:610-1128
      35 statements were executed (9 duplicates)Show only duplicates476ms
      • Articles.php#513standard_digital_mainConnection Established
        Backtrace
        • app/Utils/Articles.php:513
        • app/Http/Controllers/MainsiteController.php:657
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
        • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
        • app/Http/Controllers/MainsiteController.php:658
      • Articles.php#520standard_digital_main4.6msselect `id`, `site_id`, `article_category_id`, `title`, `long_title`, `thumbnail_url`, `story`, `published_at`, `premium`, `keywords`, `summary` from `articles` where `id` = '2001514597' and `published_at` <= '2025-03-27 08:18:27' and `deleted_at` is null
        Bindings
        • 0: 2001514597
        • 1: 2025-03-27 08:18:27
        Backtrace
        • app/Utils/Articles.php:520
        • app/Http/Controllers/MainsiteController.php:657
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
        • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
        • app/Http/Controllers/MainsiteController.php:658
      • Articles.php#1435standard_digital_main700μsselect * from `days_quote` where `deleted_at` is null and `quote_day` = '2025-03-27'
        Bindings
        • 0: 2025-03-27
        Backtrace
        • app/Utils/Articles.php:1435
        • app/Http/Controllers/MainsiteController.php:660
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
        • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
        • app/Http/Controllers/MainsiteController.php:661
      • Builder.php#20standard_digital_main730μsselect `authors`.*, `article_authors`.`article_id` as `pivot_article_id`, `article_authors`.`author_id` as `pivot_author_id` from `authors` inner join `article_authors` on `authors`.`id` = `article_authors`.`author_id` where `article_authors`.`article_id` = 2001514597 and `authors`.`deleted_at` is null
        Bindings
        • 0: 2001514597
        Backtrace
        • vendor/rennokki/laravel-eloquent-query-cache/src/Query/Builder.php:20
        • vendor/rennokki/laravel-eloquent-query-cache/src/Traits/QueryCacheModule.php:103
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
        • vendor/rennokki/laravel-eloquent-query-cache/src/Traits/QueryCacheModule.php:84
        • vendor/rennokki/laravel-eloquent-query-cache/src/Query/Builder.php:21
      • Articles.php#147standard_digital_main700μsselect `id` from `article_categories` where `site_id` = 1 and `id` = 3 or `parent_id` = 3 and `deleted_at` is null
        Bindings
        • 0: 1
        • 1: 3
        • 2: 3
        Backtrace
        • app/Utils/Articles.php:147
        • app/Http/Controllers/MainsiteController.php:727
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
        • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
        • app/Http/Controllers/MainsiteController.php:728
      • Articles.php#164standard_digital_main12.36msselect `id`, `article_category_id`, `title`, `thumbnail_url`, `published_at`, `premium` from `articles` where `article_category_id` in (3) and `site_id` = 1 and `deleted_at` is null and `published_at` <= '2025-03-27 08:18:27' order by `published_at` desc, `list_order` asc, `parent_category_list_order` asc limit 10 offset 0
        Bindings
        • 0: 3
        • 1: 1
        • 2: 2025-03-27 08:18:27
        Backtrace
        • app/Utils/Articles.php:164
        • app/Http/Controllers/MainsiteController.php:727
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
        • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
        • app/Http/Controllers/MainsiteController.php:728
      • Articles.php#164standard_digital_main880μsselect `id`, `name`, `parent_id` from `article_categories` where `article_categories`.`id` in (3)
        Backtrace
        • app/Utils/Articles.php:164
        • app/Http/Controllers/MainsiteController.php:727
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
        • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
        • app/Http/Controllers/MainsiteController.php:728
      • Articles.php#53standard_digital_main750μsselect `id`, `name`, `short_name`, `parent_id`, `site_id` from `article_categories` where `id` = 3
        Bindings
        • 0: 3
        Backtrace
        • app/Utils/Articles.php:53
        • app/Utils/Articles.php:338
        • app/Http/Controllers/MainsiteController.php:737
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
        • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
      • Articles.php#53standard_digital_main710μsselect `id`, `name`, `short_name`, `parent_id`, `site_id` from `article_categories` where `id` is null
        Backtrace
        • app/Utils/Articles.php:53
        • app/Utils/Articles.php:343
        • app/Http/Controllers/MainsiteController.php:737
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
        • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
      • Articles.php#55standard_digital_mainConnection Established
        Backtrace
        • app/Utils/Articles.php:55
        • app/Utils/Articles.php:343
        • app/Http/Controllers/MainsiteController.php:737
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
        • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
      • Articles.php#55standard_digital_main3.82msselect `id`, `name`, `short_name`, `parent_id`, `site_id` from `article_categories` where `id` is null
        Backtrace
        • app/Utils/Articles.php:55
        • app/Utils/Articles.php:343
        • app/Http/Controllers/MainsiteController.php:737
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
        • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
      • Articles.php#57standard_digital_mainConnection Established
        Backtrace
        • app/Utils/Articles.php:57
        • app/Utils/Articles.php:343
        • app/Http/Controllers/MainsiteController.php:737
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
        • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
      • Articles.php#57standard_digital_main2.95msselect `id`, `name`, `short_name`, `parent_id`, `site_id` from `article_categories` where `id` is null
        Backtrace
        • app/Utils/Articles.php:57
        • app/Utils/Articles.php:343
        • app/Http/Controllers/MainsiteController.php:737
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
        • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
      • Articles.php#60standard_digital_main1.01msselect `id`, `name`, `short_name`, `parent_id`, `site_id` from `article_categories` where `refer_id` is null
        Backtrace
        • app/Utils/Articles.php:60
        • app/Utils/Articles.php:343
        • app/Http/Controllers/MainsiteController.php:737
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
        • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
      • Articles.php#688standard_digital_main93.48msselect `id`, `site_id`, `article_category_id`, `title`, `thumbnail_url`, `story`, `published_at`, `premium` from `articles` where (`keywords` LIKE '%[\"Political violence in Kenya\",\"Attacks on government critics\",\"Salasya attacked\",\"Freedom of speech in Kenya\"]%') and `site_id` = 1 and `published_at` <= '2025-03-27 08:18:27' and `deleted_at` is null and `id` not in ('2001514597') order by `published_at` desc limit 4 offset 0
        Bindings
        • 0: %["Political violence in Kenya","Attacks on government critics","Salasya attacked","Freedom of speech in Kenya"]%
        • 1: 1
        • 2: 2025-03-27 08:18:27
        • 3: 2001514597
        Backtrace
        • app/Utils/Articles.php:688
        • app/Http/Controllers/MainsiteController.php:821
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
        • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
        • app/Http/Controllers/MainsiteController.php:822
      • Articles.php#424standard_digital_main66.31msselect `id`, `article_category_id`, `title`, `thumbnail_url`, `published_at`, `premium` from `articles` where (`site_id` = 1 or `site_id` = 16 or `site_id` = 20) and `deleted_at` is null and `published_at` <= '2025-03-27 08:18:27' and `published_at` >= '2025-03-27 07:18:27' order by RAND(), `published_at` desc, `homepage_list_order` asc, `list_order` asc limit 4 offset 0
        Bindings
        • 0: 1
        • 1: 16
        • 2: 20
        • 3: 2025-03-27 08:18:27
        • 4: 2025-03-27 07:18:27
        Backtrace
        • app/Utils/Articles.php:424
        • app/Http/Controllers/MainsiteController.php:825
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
        • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
        • app/Http/Controllers/MainsiteController.php:826
      • Articles.php#147standard_digital_main790μsselect `id` from `article_categories` where `site_id` = 1 and `id` = 480 or `parent_id` = 480 and `deleted_at` is null
        Bindings
        • 0: 1
        • 1: 480
        • 2: 480
        Backtrace
        • app/Utils/Articles.php:147
        • app/Http/Controllers/MainsiteController.php:829
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
        • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
        • app/Http/Controllers/MainsiteController.php:830
      • Articles.php#164standard_digital_main1.39msselect `id`, `article_category_id`, `title`, `thumbnail_url`, `published_at`, `premium` from `articles` where `article_category_id` in (480, 481, 482, 719) and `site_id` = 1 and `deleted_at` is null and `published_at` <= '2025-03-27 08:18:27' order by `published_at` desc, `list_order` asc, `parent_category_list_order` asc limit 4 offset 0
        Bindings
        • 0: 480
        • 1: 481
        • 2: 482
        • 3: 719
        • 4: 1
        • 5: 2025-03-27 08:18:27
        Backtrace
        • app/Utils/Articles.php:164
        • app/Http/Controllers/MainsiteController.php:829
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
        • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
        • app/Http/Controllers/MainsiteController.php:830
      • Articles.php#164standard_digital_main700μsselect `id`, `name`, `parent_id` from `article_categories` where `article_categories`.`id` in (480, 482)
        Backtrace
        • app/Utils/Articles.php:164
        • app/Http/Controllers/MainsiteController.php:829
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
        • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
        • app/Http/Controllers/MainsiteController.php:830
      • Articles.php#753standard_digital_main60.76msselect `id`, `article_category_id`, `title`, `thumbnail_url`, `published_at`, `premium` from `articles` where (`premium` = 1 or `article_category_id` = 486) and `site_id` = '1' and `deleted_at` is null and `published_at` <= '2025-03-27 08:18:27' and `homepage_list_order` is not null order by `published_at` desc, `homepage_list_order` asc, `list_order` asc limit 4 offset 0
        Bindings
        • 0: 1
        • 1: 486
        • 2: 1
        • 3: 2025-03-27 08:18:27
        Backtrace
        • app/Utils/Articles.php:753
        • app/Http/Controllers/MainsiteController.php:837
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
        • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
        • app/Http/Controllers/MainsiteController.php:838
      • Articles.php#753standard_digital_main720μsselect `id`, `name`, `parent_id` from `article_categories` where `article_categories`.`id` in (46, 588)
        Backtrace
        • app/Utils/Articles.php:753
        • app/Http/Controllers/MainsiteController.php:837
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
        • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
        • app/Http/Controllers/MainsiteController.php:838
      • Articles.php#819standard_digital_main2.49msselect `id`, `site_id`, `article_category_id`, `title`, `thumbnail_url`, `story`, `published_at`, `premium` from `articles` where `id` < '2001514597' and `site_id` = 1 and `published_at` <= '2025-03-27 08:18:27' and `deleted_at` is null order by `id` desc limit 1
        Bindings
        • 0: 2001514597
        • 1: 1
        • 2: 2025-03-27 08:18:27
        Backtrace
        • app/Utils/Articles.php:819
        • app/Http/Controllers/MainsiteController.php:841
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
        • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
        • app/Http/Controllers/MainsiteController.php:842
      • Articles.php#819standard_digital_main690μsselect `id`, `name`, `parent_id` from `article_categories` where `article_categories`.`id` in (1)
        Backtrace
        • app/Utils/Articles.php:819
        • app/Http/Controllers/MainsiteController.php:841
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
        • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
        • app/Http/Controllers/MainsiteController.php:842
      • Articles.php#865standard_digital_main1.15msselect `id`, `site_id`, `article_category_id`, `title`, `thumbnail_url`, `story`, `published_at`, `premium` from `articles` where `id` > '2001514597' and `site_id` = 1 and `deleted_at` is null and `published_at` <= '2025-03-27 08:18:27' limit 1
        Bindings
        • 0: 2001514597
        • 1: 1
        • 2: 2025-03-27 08:18:27
        Backtrace
        • app/Utils/Articles.php:865
        • app/Http/Controllers/MainsiteController.php:841
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
        • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
        • app/Http/Controllers/MainsiteController.php:842
      • Articles.php#865standard_digital_main770μsselect `id`, `name`, `parent_id` from `article_categories` where `article_categories`.`id` in (588)
        Backtrace
        • app/Utils/Articles.php:865
        • app/Http/Controllers/MainsiteController.php:841
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
        • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
        • app/Http/Controllers/MainsiteController.php:842
      • Articles.php#1288standard_digital_main6.03msselect `id`, `site_id`, `article_category_id`, `title`, `thumbnail_url`, `story`, `published_at`, `premium` from `articles` where `published_at` <= '2025-03-27 08:18:27' and `article_category_id` = 3 and `site_id` = 1 and `id` not in ('2001514597') order by `homepage_list_order` asc, `published_at` desc limit 6 offset 0
        Bindings
        • 0: 2025-03-27 08:18:27
        • 1: 3
        • 2: 1
        • 3: 2001514597
        Backtrace
        • app/Utils/Articles.php:1288
        • app/Http/Controllers/MainsiteController.php:845
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
        • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
        • app/Http/Controllers/MainsiteController.php:846
      • Articles.php#1288standard_digital_main630μsselect `id`, `name`, `parent_id` from `article_categories` where `article_categories`.`id` in (3)
        Backtrace
        • app/Utils/Articles.php:1288
        • app/Http/Controllers/MainsiteController.php:845
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
        • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
        • app/Http/Controllers/MainsiteController.php:846
      • Builder.php#20standard_digital_main23.97msselect `videos`.`id`, `videos`.`video_category_id`, `videos`.`title`, `videos`.`video_url`, `videos`.`description`, `videos`.`published_at`, `videos`.`thumbnail_url` from `videos` inner join `video_categories` on `video_categories`.`id` = `videos`.`video_category_id` where (`keywords` LIKE '%[\"Political violence in Kenya\",\"Attacks on government critics\",\"Salasya attacked\",\"Freedom of speech in Kenya\"]%') and `videos`.`deleted_at` is null and `video_categories`.`video_type_id` = 1 order by `published_at` desc limit 3 offset 0
        Bindings
        • 0: %["Political violence in Kenya","Attacks on government critics","Salasya attacked","Freedom of speech in Kenya"]%
        • 1: 1
        Backtrace
        • vendor/rennokki/laravel-eloquent-query-cache/src/Query/Builder.php:20
        • vendor/rennokki/laravel-eloquent-query-cache/src/Traits/QueryCacheModule.php:103
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
        • vendor/rennokki/laravel-eloquent-query-cache/src/Traits/QueryCacheModule.php:84
        • vendor/rennokki/laravel-eloquent-query-cache/src/Query/Builder.php:21
      • Articles.php#3841standard_digital_main740μsselect count(std_trend_article_id) as count, std_trend_article_id from `std_article_trends` group by `std_trend_article_id` order by `count` desc limit 20
        Backtrace
        • app/Utils/Articles.php:3841
        • app/Http/Controllers/MainsiteController.php:853
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
        • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
        • app/Http/Controllers/MainsiteController.php:854
      • Articles.php#3867standard_digital_main1.31msselect `id`, `article_category_id`, `title`, `thumbnail_url`, `published_at`, `premium` from `articles` where `id` in (2001249065, 2001231775, 2001514725, 2001275105, 2001514714, 2001514754, 2001469340, 2001259844, 2001514717, 2001514788, 2001514712, 2000198221, 2001235523, 2001464388, 2001514757, 2001241414, 2001514749, 2001420065, 2001514617, 2001514768) and `deleted_at` is null and `published_at` <= '2025-03-27 08:18:27' and `homepage_list_order` is not null order by `published_at` desc, `homepage_list_order` asc, `list_order` asc limit 5
        Bindings
        • 0: 2001249065
        • 1: 2001231775
        • 2: 2001514725
        • 3: 2001275105
        • 4: 2001514714
        • 5: 2001514754
        • 6: 2001469340
        • 7: 2001259844
        • 8: 2001514717
        • 9: 2001514788
        • 10: 2001514712
        • 11: 2000198221
        • 12: 2001235523
        • 13: 2001464388
        • 14: 2001514757
        • 15: 2001241414
        • 16: 2001514749
        • 17: 2001420065
        • 18: 2001514617
        • 19: 2001514768
        • 20: 2025-03-27 08:18:27
        Backtrace
        • app/Utils/Articles.php:3867
        • app/Http/Controllers/MainsiteController.php:853
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
        • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
        • app/Http/Controllers/MainsiteController.php:854
      • Articles.php#3867standard_digital_main690μsselect `id`, `name`, `parent_id` from `article_categories` where `article_categories`.`id` in (1, 7, 267, 284, 588)
        Backtrace
        • app/Utils/Articles.php:3867
        • app/Http/Controllers/MainsiteController.php:853
        • vendor/laravel/framework/src/Illuminate/Cache/Repository.php:397
        • vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:408
        • app/Http/Controllers/MainsiteController.php:854
      • CookieTool.php#185standard_digital_main750μsselect * from `settings` where `meta_name` = 'article_age' limit 1
        Bindings
        • 0: article_age
        Backtrace
        • app/Utils/CookieTool.php:185
        • app/Http/Controllers/MainsiteController.php:870
        • vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
      • helper.php#424standard_digital_main1.16msselect * from article_categories where id = '3'
        Backtrace
        • app/Library/helper.php:424
        • vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:110
        • vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php:58
        • vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php:70
        • vendor/laravel/framework/src/Illuminate/View/View.php:195
      • helper.php#424standard_digital_main1.42msselect * from article_categories where id = '3'
        Backtrace
        • app/Library/helper.php:424
        • vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:110
        • vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php:58
        • vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php:70
        • vendor/laravel/framework/src/Illuminate/View/View.php:195
      • helper.php#424standard_digital_main800μsselect * from article_categories where id = '3'
        Backtrace
        • app/Library/helper.php:424
        • vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:110
        • vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php:58
        • vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php:70
        • vendor/laravel/framework/src/Illuminate/View/View.php:195
      • helper.php#424standard_digital_main680μsselect * from article_categories where id = '3'
        Backtrace
        • app/Library/helper.php:424
        • vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:110
        • vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php:58
        • vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php:70
        • vendor/laravel/framework/src/Illuminate/View/View.php:195
      • Articles.php#1350standard_digital_main179msselect * from `articles` where `deleted_at` is null and `published_at` <= '2025-03-27 08:18:28' and (`keywords` like '%Political violence in Kenya%' or `keywords` like '%Attacks on government critics%' or `keywords` like '%Salasya attacked%' or `keywords` like '%Freedom of speech in Kenya%') and (`site_id` = 1 or `site_id` = 16 or `site_id` = 20) and `id` <> '2001514597' order by `published_at` desc limit 3
        Bindings
        • 0: 2025-03-27 08:18:28
        • 1: %Political violence in Kenya%
        • 2: %Attacks on government critics%
        • 3: %Salasya attacked%
        • 4: %Freedom of speech in Kenya%
        • 5: 1
        • 6: 16
        • 7: 20
        • 8: 2001514597
        Backtrace
        • app/Utils/Articles.php:1350
        • app/Utils/Articles.php:1674
        • view::mainsite.article:568
        • vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:110
        • vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php:58
      • app.blade.php#825standard_digital_main830μsselect * from `favourite_topics` where `status` = 1
        Bindings
        • 0: 1
        Backtrace
        • view::mainsite.layouts.app:825
        • vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:110
        • vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php:58
        • vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php:70
        • vendor/laravel/framework/src/Illuminate/View/View.php:195
      App\Models\Category
      379Category.php#?
      App\Models\Article
      32Article.php#?
      App\Models\Trending
      20Trending.php#?
      App\Topic
      16Topic.php#?
      App\Models\Author
      14Author.php#?
          _token
          N2gDQjjdE8HmlEm3DEy3FQWuitLdQiGcKmX3KOlx
          _previous
          array:1 [ "url" => "http://www.standardmedia.co.ke/main-staging/politics/article/2001514597/goons-...
          _flash
          array:2 [ "old" => [] "new" => [] ]
          offset
          0
          path_info
          /politics/article/2001514597/goons-go-on-rampage
          status_code
          200
          
          status_text
          OK
          format
          html
          content_type
          text/html; charset=UTF-8
          request_query
          []
          
          request_request
          []
          
          request_headers
          0 of 0
          array:24 [ "cf-ray" => array:1 [ 0 => "926c6d5b4d83e174-EWR" ] "x-forwarded-for" => array:1 [ 0 => "3.129.218.43" ] "host" => array:1 [ 0 => "www.standardmedia.co.ke" ] "cf-connecting-ip" => array:1 [ 0 => "3.129.218.43" ] "accept-encoding" => array:1 [ 0 => "gzip, br" ] "sec-fetch-site" => array:1 [ 0 => "none" ] "x-forwarded-proto" => array:1 [ 0 => "https" ] "cookie" => array:1 [ 0 => "story_no=eyJpdiI6IlFjeHVSVVB3ck04RWZsMGFNcy9YTHc9PSIsInZhbHVlIjoiU0M0RjQycHVMYWVsaDc5THRWais5cVcrakR3bWJ3MFI0YzFWMlJYcUE0Q1dqbUdoZmFQRkxMbXllVncvblVSYSIsIm1hYyI6ImMwZDhiYzY2ZmI1ZTZhYzFhNzU0Zjc0Njg3MGE0ZjVmYjExOWQ0NTQ5NzkwMjM3MjRmMjY1Mjg0NDgyNmNkNTUiLCJ0YWciOiIifQ%3D%3D; story_no_insider=eyJpdiI6Ilc5QXUxM0gwTE4xTGRsbm9VTlV2cVE9PSIsInZhbHVlIjoiK0VvcGIxNXhIb2ZUUFROdFYxMVRGMnU1Y0cvS01mUm5VekwxYUNac2R2WmNiU0Q0WTgrUSs3Ry9OYlBicFluayIsIm1hYyI6ImQ0YzI4MzBmOTk4ZTgwZTAxODFjNjg0OTZlYjYzZDk0NzJlZGVmNGZiNjE0ODZiMTc0ZTJiZDY5NmIwYjBiZjAiLCJ0YWciOiIifQ%3D%3D; XSRF-TOKEN=eyJpdiI6InJNRWM0TXNiQ1ptcHd4VXRTcjZtU3c9PSIsInZhbHVlIjoiMGp2YXo0ajVGVVZGYXFITUJIQnltUmROa1VIeEtaTCtFS0JGMC9RaFRpcHFLbGM1aS9JM0NFaXBhU3VSdm0rQW9DM2s0clR0dWlSZXIvZGtKZTc0NGttYmZGc1dJVkNkSU5rbng2dEg1RDVKaDZlTGw5aStnTHdnMmtIaWVxTloiLCJtYWMiOiJkNDk4YmE1NGNkZWFiYmI3ZTRmOGUwOTMxNGY3N2E3NjhhODFlMzJiMTA5MWQ3NGUzNmEyYTQ1OWUxZjY0YjU5IiwidGFnIjoiIn0%3D; thestandardmediagroup_session=eyJpdiI6IjZuRHVPWDhYb0FaS2dDRWRtNW9LOGc9PSIsInZhbHVlIjoidm41T1dNZE8rUC9QcTNwZ01EenF4V2RJNHNrbkp0OW1TTHNWSk15SktMREkwd01PVEthOGo0emRtc0lZT0pCL0lXY1lMZGFDOHQvZTlSSXdZTkFabEJYeVlqZWhaUzVxWS9SYU5VNStCU3M5a0s1c0l3dmNwcFZMcmR2ME5ZNEoiLCJtYWMiOiI2NzBjZjI0ZmJmZmU5ZDE2ODk1NWRmOTAwZDZmYmY5YTkzYTAxODRmZmYyNmI0NDg0YzBkNTk0YWFlMGQ3NjljIiwidGFnIjoiIn0%3Dstory_no=eyJpdiI6IlFjeHVSVVB3ck04RWZsMGFNcy9YTHc9PSIsInZhbHVlIjoiU0M0RjQycHVMYWVsaDc5THRWais5cVcrakR3bWJ3MFI0YzFWMlJYcUE0Q1dqbUdoZmFQRkxMbXllVncvblVSYSIsIm1hYyI" ] "priority" => array:1 [ 0 => "u=0, i" ] "cf-visitor" => array:1 [ 0 => "{"scheme":"https"}" ] "cf-ipcountry" => array:1 [ 0 => "US" ] "sec-fetch-dest" => array:1 [ 0 => "document" ] "cdn-loop" => array:1 [ 0 => "cloudflare; loops=1" ] "sec-fetch-user" => array:1 [ 0 => "?1" ] "sec-fetch-mode" => array:1 [ 0 => "navigate" ] "connection" => array:1 [ 0 => "Keep-Alive" ] "pragma" => array:1 [ 0 => "no-cache" ] "cache-control" => array:1 [ 0 => "no-cache" ] "sec-ch-ua" => array:1 [ 0 => ""HeadlessChrome";v="129", "Not=A?Brand";v="8", "Chromium";v="129"" ] "sec-ch-ua-mobile" => array:1 [ 0 => "?0" ] "sec-ch-ua-platform" => array:1 [ 0 => ""Windows"" ] "upgrade-insecure-requests" => array:1 [ 0 => "1" ] "user-agent" => array:1 [ 0 => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" ] "accept" => array:1 [ 0 => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" ] ]
          request_cookies
          0 of 0
          array:4 [ "story_no" => "1" "story_no_insider" => "1" "XSRF-TOKEN" => "N2gDQjjdE8HmlEm3DEy3FQWuitLdQiGcKmX3KOlx" "thestandardmediagroup_session" => "CK4h4YDlP3emXCPqEkTgjrsyvPVEOLx2X8ZMXkJm" ]
          response_headers
          0 of 0
          array:5 [ "content-type" => array:1 [ 0 => "text/html; charset=UTF-8" ] "cache-control" => array:1 [ 0 => "no-cache, private" ] "date" => array:1 [ 0 => "Thu, 27 Mar 2025 05:18:28 GMT" ] "set-cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6ImxFQkpKeUgrQVRSZmlvYkl6d3p1enc9PSIsInZhbHVlIjoiTjIyaVhaUXUvcmdrUEd1OTJQckt4TWoyUVdRV3FBUkgzaDJCRnRJSm9NWUgvNXhZSDZXYzJqL1kyNFJCeUkzUzlvTXRIVE42aTVpL3FVQ0p0MElFSEI1RmRQaXNtaEtXQ2VVaGRlbmJTeWdPSW5tUG5TR2pyVnUwQVFYRnBWY1EiLCJtYWMiOiI3N2I1OTUxODg3NGZlYzAyN2Q4MjZjOTQzNWYyNTdmYTFhYzFiMjAxNTY3M2NmODE2ZmM1NDA0MTYyMDMyNDE0IiwidGFnIjoiIn0%3D; expires=Sat, 26 Apr 2025 15:47:28 GMT; Max-Age=2629740; path=/; samesite=laxXSRF-TOKEN=eyJpdiI6ImxFQkpKeUgrQVRSZmlvYkl6d3p1enc9PSIsInZhbHVlIjoiTjIyaVhaUXUvcmdrUEd1OTJQckt4TWoyUVdRV3FBUkgzaDJCRnRJSm9NWUgvNXhZSDZXYzJqL1kyNFJCeUkzUzlvTXRIV" 1 => "thestandardmediagroup_session=eyJpdiI6InlveEUzTUJ4TW5aRVpZbThQWU5wN2c9PSIsInZhbHVlIjoiVGJNREhOc2FXakFvRUxVWms5cld6Z2V1QVdqbElFQlF4M1NCcVdPeVRHbDZKNm9CU0VjS0VUeWQ4TEl1bUwvOFhOcElURlRTVHZ2MUdGUmxjU1RPY0ZBaUxlbU9Vc3dxcjFKVlljU0JUbk1hT2N4anplUVEzRXJNeHlsYjlFa1kiLCJtYWMiOiJkZmQ1M2IxYTBkNjQyMTgyZGI4N2I5MjNhNWUzNTRiNDk5NjQ0OTQ3YWE5ZTNlOTQ5ZDZhZTViODk3MThiY2NkIiwidGFnIjoiIn0%3D; expires=Sat, 26 Apr 2025 15:47:28 GMT; Max-Age=2629740; path=/; httponly; samesite=laxthestandardmediagroup_session=eyJpdiI6InlveEUzTUJ4TW5aRVpZbThQWU5wN2c9PSIsInZhbHVlIjoiVGJNREhOc2FXakFvRUxVWms5cld6Z2V1QVdqbElFQlF4M1NCcVdPeVRHbDZKNm9CU0VjS0VUeW" ] "Set-Cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6ImxFQkpKeUgrQVRSZmlvYkl6d3p1enc9PSIsInZhbHVlIjoiTjIyaVhaUXUvcmdrUEd1OTJQckt4TWoyUVdRV3FBUkgzaDJCRnRJSm9NWUgvNXhZSDZXYzJqL1kyNFJCeUkzUzlvTXRIVE42aTVpL3FVQ0p0MElFSEI1RmRQaXNtaEtXQ2VVaGRlbmJTeWdPSW5tUG5TR2pyVnUwQVFYRnBWY1EiLCJtYWMiOiI3N2I1OTUxODg3NGZlYzAyN2Q4MjZjOTQzNWYyNTdmYTFhYzFiMjAxNTY3M2NmODE2ZmM1NDA0MTYyMDMyNDE0IiwidGFnIjoiIn0%3D; expires=Sat, 26-Apr-2025 15:47:28 GMT; path=/XSRF-TOKEN=eyJpdiI6ImxFQkpKeUgrQVRSZmlvYkl6d3p1enc9PSIsInZhbHVlIjoiTjIyaVhaUXUvcmdrUEd1OTJQckt4TWoyUVdRV3FBUkgzaDJCRnRJSm9NWUgvNXhZSDZXYzJqL1kyNFJCeUkzUzlvTXRIV" 1 => "thestandardmediagroup_session=eyJpdiI6InlveEUzTUJ4TW5aRVpZbThQWU5wN2c9PSIsInZhbHVlIjoiVGJNREhOc2FXakFvRUxVWms5cld6Z2V1QVdqbElFQlF4M1NCcVdPeVRHbDZKNm9CU0VjS0VUeWQ4TEl1bUwvOFhOcElURlRTVHZ2MUdGUmxjU1RPY0ZBaUxlbU9Vc3dxcjFKVlljU0JUbk1hT2N4anplUVEzRXJNeHlsYjlFa1kiLCJtYWMiOiJkZmQ1M2IxYTBkNjQyMTgyZGI4N2I5MjNhNWUzNTRiNDk5NjQ0OTQ3YWE5ZTNlOTQ5ZDZhZTViODk3MThiY2NkIiwidGFnIjoiIn0%3D; expires=Sat, 26-Apr-2025 15:47:28 GMT; path=/; httponlythestandardmediagroup_session=eyJpdiI6InlveEUzTUJ4TW5aRVpZbThQWU5wN2c9PSIsInZhbHVlIjoiVGJNREhOc2FXakFvRUxVWms5cld6Z2V1QVdqbElFQlF4M1NCcVdPeVRHbDZKNm9CU0VjS0VUeW" ] ]
          session_attributes
          0 of 0
          array:4 [ "_token" => "N2gDQjjdE8HmlEm3DEy3FQWuitLdQiGcKmX3KOlx" "_previous" => array:1 [ "url" => "http://www.standardmedia.co.ke/main-staging/politics/article/2001514597/goons-go-on-rampage" ] "_flash" => array:2 [ "old" => [] "new" => [] ] "offset" => 0 ]
          ClearShow all
          Date ↕MethodURLData
          #12025-03-27 08:18:28GET/main-staging/politics/article/2001514597/goons-go-on-rampage1135461